KR101845079B1 - 대상물의 cad 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법 - Google Patents

대상물의 cad 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법 Download PDF

Info

Publication number
KR101845079B1
KR101845079B1 KR1020160115476A KR20160115476A KR101845079B1 KR 101845079 B1 KR101845079 B1 KR 101845079B1 KR 1020160115476 A KR1020160115476 A KR 1020160115476A KR 20160115476 A KR20160115476 A KR 20160115476A KR 101845079 B1 KR101845079 B1 KR 101845079B1
Authority
KR
South Korea
Prior art keywords
coordinate system
robot
point
stl
tracking
Prior art date
Application number
KR1020160115476A
Other languages
English (en)
Other versions
KR20180028155A (ko
Inventor
송일재
Original Assignee
주식회사 윈텍오토메이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 윈텍오토메이션 filed Critical 주식회사 윈텍오토메이션
Priority to KR1020160115476A priority Critical patent/KR101845079B1/ko
Publication of KR20180028155A publication Critical patent/KR20180028155A/ko
Application granted granted Critical
Publication of KR101845079B1 publication Critical patent/KR101845079B1/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1615Programme controls characterised by special kind of manipulator, e.g. planar, scara, gantry, cantilever, space, closed chain, passive/active joints and tendon driven manipulators
    • B25J9/162Mobile manipulator, movable base with manipulator arm mounted on it
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Orthopedic Medicine & Surgery (AREA)
  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

본 발명은 대상물의 STL 전자파일에 저장된 다수 개의 점 위치 데이터를 분석하여 사용자가 선택한 점의 위치 정보, 수직 벡터 등을 추출하는 입력 처리부; 실제 로봇의 좌표를 이용하여 STL 기준좌표계와 로봇 기준좌표계 사이의 관계를 계산하는 로봇 동기부; 시작과 끝을 의미하는 2점 사이의 트래킹 방향 및 경로를 계산하고, 2점 사이의 다수 개의 점 좌표를 추출하는 트래킹 경로 연산부; 로봇 기준좌표계에 대한 좌표와 방향으로 변환하는 좌표 변환부; 로봇 좌표 정보를 실제 로봇 제어기로 전송하는 출력부;를 포함하여 이루어지는 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 시스템에 관한 것이고,
또한, 실제 로봇의 기준 좌표계와 STL 데이터의 기준 좌표계 사이의 관계를 계산하는 단계; 수직 벡터 정보를 이용하여 평면을 생성하고 트래킹 방향을 결정하는 단계; 생성된 평면과 STL 상의 다수 개의 삼각형과의 교차점을 추출하는 단계; 추출된 다수 개의 교차점을 순서대로 재배치하는 단계; 각 점에 대한 로봇 TCP 위치와 로봇 툴의 진입 각도 계산 후 트래킹 좌표 리스트 추출하여 위치좌표와 수직벡터를 유도하는 단계;를 포함하여 이루어지는 것을 특징으로 하는 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법에 관한 것이다.

Description

대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법{A Planning Method for Robot Position and Tracking Path Using CAD Information of Object}
본 발명은 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법에 관한 것으로, 더 상세하게는 로봇이 작업하고자 하는 대상물의 CAD 형상을 이용하여 실제 로봇으로 티칭(Teaching : 교시과정)하지 않고도 CAD 형상에서 선택한 위치들로 로봇이 이동하도록 로봇의 위치를 생성하고 두 개의 점을 선택하는 경우 두 점 사이의 트래킹 경로를 생성하는 방법에 관한 것이다.
일반적인 산업용 로봇의 경우 로봇이 다루고자 하는 물체 상의 임의의 점을 접촉하거나 또는 물체 상의 점들을 따라 이동하는 트래킹 작업을 하는 경우에는 작업자가 직접 로봇의 교시장치를 조작하는 교시 과정이 필요하다. 교시 과정은 실제 로봇을 원하는 점으로 이동시킨 후 해당 자세 정보를 제어기에 저장하고 원하는 경로를 생성하기 위해서는 그 중간 위치들을 동일한 방법으로 기억시키는 과정으로 교시 과정을 마친 후 저장된 위치 점들을 거치는 로봇 프로그램을 직접 작성 후에 로봇을 동작시키게 된다.
종전에는 이 과정에 로봇 조작에 숙련된 전문 작업를 필요로 하고 로봇의 대상물이 바뀌거나 주변 환경이 바뀌는 경우에 매번 동일한 과정을 거쳐야 하는 문제점을 가지고 있다.
따라서 이러한 문제점을 해결하고자 대상물의 CAD 형상을 이용하여 실제 교시 없이 CAD 상의 임의의 점을 선택 시 로봇의 위치를 생성하는 기술을 활용하고자 한다.
대한민국 등록특허공보 제10-0664681호(2007. 01. 04) 대한민국 등록특허공보 제10-0872466호(2008. 12. 08)
상술한 문제점을 해결하기 위한 본 발명의 목적은, 모든 작업 점들에 대한 교시 작업 없이 대상물과 로봇의 접촉점이나 트래킹 경로를 구하는 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 시스템을 제공하는데 있다.
본 발명의 다른 목적은, 대상물의 형상이 일반적인 CAD 소프트웨어에서 저장할 수 있는 형태인 STL 파일 형태로 주어졌을 때 대상물과 로봇 사이의 위치 관계를 구하고, 대상물의 CAD 상 임의의 점 선택 시 해당 점 위치 데이터를 실제 로봇의 좌표로 변환하고, 트래킹 시작점과 끝점을 선택 시 물체의 표면을 트래킹하며 해당 점 사이를 이동할 수 있는 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법을 제공하는데 있다.
본 발명의 또 다른 목적은, STL 파일은 형상의 표면을 구성하는 작은 삼각형들의 집합을 저장하는 파일로 각 작은 삼각형의 꼭지점 좌표, 삼각형을 구성하는 점들의 모양, 그리고 각 삼각형에 수직한 방향을 의미하는 단위벡터가 저장되는 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법을 제공하는데 있다.
본 발명의 또 다른 목적은, 실제 로봇의 기준 좌표계와 STL 데이터의 기준 좌표계 사이의 관계를 계산하는 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법을 제공하는데 있다.
본 발명의 또 다른 목적은, 대상물의 STL 형태의 데이터에서 시작점과 끝점 선택 시, 상기 시작점과 끝점의 위치와 해당 점이 포함된 2개의 삼각형의 수직한 방향을 의미하는 수직 벡터 정보를 이용하여 평면을 생성하고 트래킹 방향을 결정하는 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법을 제공하는데 있다.
본 발명의 또 다른 목적은, 생성된 평면과 STL 상의 다수 개의 삼각형과의 교차점을 추출하는 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법을 제공하는데 있다.
본 발명의 또 다른 목적은, 추출된 다수 개의 교차점을 사용자가 선택한 시작점에서 끝점 방향 순서대로 재배치하는 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법을 제공하는데 있다.
본 발명의 또 다른 목적은, 유도된 관계식을 이용하여 각 점에 대한 로봇 TCP(Tool Center Point) 위치와 로봇 툴의 진입 각도 계산 후 트래킹 좌표 리스트 추출하여 위치좌표와 수직벡터를 유도하는 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법을 제공하는데 있다.
이와 같은 목적을 달성하기 위한 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 시스템은, 입력 처리부, 로봇 동기부, 트래킹 경로 연산부, 좌표 변환부, 출력부를 포함하여 이루어지는 것을 특징으로 한다.
이러한 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 시스템의 다른 특징은, 입력 처리부가 대상물의 STL 전자파일에 저장된 다수 개의 점 위치 데이터를 분석하여 사용자가 선택한 점의 위치 정보, 수직 벡터 등을 추출하도록 이루어진다.
이러한 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 시스템의 또 다른 특징은, 로봇 동기부가 입력 처리부에 입력된 다수 개의 점 좌표와 해당 점에 대한 실제 로봇의 좌표를 이용하여 STL 기준좌표계와 로봇 기준좌표계 사이의 관계를 계산하도록 이루어진다.
이러한 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 시스템의 또 다른 특징은, 트래킹 경로 연산부가 입력 처리부에 입력된 트래킹의 시작과 끝을 의미하는 2점 사이의 트래킹 방향 및 경로를 계산하고, 상기 2점 사이의 다수 개의 점 좌표를 추출하도록 이루어진다.
이러한 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 시스템의 또 다른 특징은, 좌표 변환부가 경로 연산부의 결과인 STL 기준좌표계에 대한 각 좌표와 방향에 대해 로봇 기준좌표계에 대한 좌표와 방향으로 변환하도록 이루어진다.
이러한 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 시스템의 또 다른 특징은, 출력부가 좌표 변환부로부터 얻은 로봇 좌표 정보를 실제 로봇 제어기로 전송하도록 이루어진다.
본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법은, 실제 로봇의 기준 좌표계와 STL 데이터의 기준 좌표계 사이의 관계를 계산하는 단계, 상기 단계가 완료되면, 대상물의 STL 형태의 데이터에서 시작점과 끝점 선택 시, 상기 시작점과 끝점의 위치와 해당 점이 포함된 2개의 삼각형의 수직한 방향을 의미하는 수직 벡터 정보를 이용하여 평면을 생성하고 트래킹 방향을 결정하는 단계, 상기 단계에서 생성된 평면과 STL 상의 다수 개의 삼각형과의 교차점을 추출하는 단계, 상기 단계에서 추출된 다수 개의 교차점을 사용자가 선택한 시작점에서 끝점 방향 순서대로 재배치하는 단계, 상기 단계에서 유도된 관계식을 이용하여 각 점에 대한 로봇 TCP(Tool Center Point) 위치와 로봇 툴의 진입 각도 계산 후 트래킹 좌표 리스트 추출하여 위치좌표와 수직벡터를 유도하는 단계를 포함하여 이루어지는 것을 특징으로 한다.
이상에서와 같은 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 시스템은 CAD 소프트웨어인 STL 파일에서 대상물과 로봇 사이의 위치 관계를 구하고, 대상물의 CAD 상 임의의 점 선택 시 해당 점 위치 데이터를 실제 로봇의 좌표로 변환하고, 트래킹 시작점과 끝점을 선택 시 물체의 표면을 트래킹하며 해당 점 사이를 이동할 수 있는 경로를 생성한다.
그러므로 일반적인 산업용 로봇의 경우 로봇이 다루고자 하는 물체 상의 임의의 점을 접촉하거나 또는 물체 상의 점들을 따라 이동하는 트래킹 작업을 하는 경우에는 작업자가 직접 로봇의 교시장치를 조작하는 교시 과정이 필요하다. 교시 과정은 실제 로봇을 원하는 점으로 이동시킨 후 해당 자세 정보를 제어기에 저장하고 원하는 경로를 생성하기 위해서는 그 중간 위치들을 동일한 방법으로 기억시키는 과정으로 교시 과정을 마친 후 저장된 위치 점들을 거치는 로봇 프로그램을 직접 작성 후에 로봇을 동작시키게 된다.
따라서 본 발명은 대상물의 CAD 형상을 이용하여 실제 교시 없이 CAD 상의 임의의 점을 선택 시 로봇의 위치를 생성할 수 있어 로봇 조작에 숙련된 전문 작업자가 필요 없고, 로봇의 대상물이 바뀌거나 주변 환경이 바뀌는 경우에 매번 동일한 과정을 거쳐야 하는 교시 과정을 생략할 수 있어 작업능률을 극대화 할 수 있다.
또한, 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 시스템은 본 발명에 따른 연산 방법과 프로그램을 통해 물체의 CAD 정보로부터 로봇이 위치할 좌표와 경로를 자동적으로 생성할 수 있다.
그러므로 본 발명은 일반적인 CAD 제작 S/W에서 생성할 수 있는 STL 파일 정보를 이용할 수 있다.
따라서 사용자가 별도의 입력 데이터를 생성할 필요가 없어 작업 대응 능력이 우수한 장점을 가지고 있다.
또한, 본 발명은 수치적인 형상 정보를 이용하여 자동적으로 계산하기 때문에, 로봇의 이동 궤적이 복잡한 작업이나 대상물의 형상이 곡선부를 포함하는 용접 등의 작업 적용이 가능하여 생산성을 향상시킬 수 있다.
또한, 종래에는 동일한 대상물의 작업 위치를 변경하였을 경우, 기존에는 작업자가 모든 점에 대해서 새로 교시 작업을 수행해야 하나, 본 발명은 실제 로봇의 기준 좌표계와 STL 데이터의 기준 좌표계 사이의 관계를 계산하는 단계만 재실행하면 새롭게 변경된 위치에서도 트래킹 작업을 수행할 수 있는 장점이 있다.
도 1은 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 시스템의 개략적인 구성도이다.
도 2는 본 발명의 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법을 나타내는 공정도이다.
도 3은 본 발명의 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법의 로봇 기준 좌표계와 STL 데이터의 기준 좌표계 사이의 관계 계산을 나타내는 공정도이다.
도 4는 본 발명의 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법의 각 점에 대한 로봇 TCP(Tool Center Point) 위치와 로봇 툴의 진입 각도 계산 후 트래킹 좌표 리스트 추출하여 위치좌표와 수직벡터를 유도하는 단계를 나타내는 공정도이다.
도 5는 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법의 시작점과 끝점 선택 시 생성되는 평면을 나타내는 도면이다.
도 6은 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법의 평면과 각 삼각형 사이의 교차점을 나타내는 도면이다.
도 7은 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법의 트래킹 순서를 나타내는 도면이다.
도 8은 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법의 트래킹 점의 수직 벡터를 구하는 과정을 나타내는 도면이다.
도 9는 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법의 로봇 툴 진입각도와 관련 좌표계를 나타내는 도면이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시 예를 가질 수 있는바, 특정 실시 예들을 도면에 예시하고 발명의 설명에 상세하게 설명하고자 한다.
그러나 이는 본 발명을 특정한 실시 형태에 대해 한정 하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 발명에 사용된 용어나 단어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정 하려는 의도가 아니다. 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의 할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합되는 의미와 개념으로 해석되어야만 한다.
본 발명의 구체적인 특징 및 이점은 첨부된 도면을 참조한 이하의 설명으로 더욱 명확해 질 것이다.
도 1은 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 시스템의 개략적인 구성도이고, 도 2는 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법을 나타내는 공정도이고, 도 3은 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법의 로봇 기준 좌표계와 STL 데이터의 기준 좌표계 사이의 관계 계산을 나타내는 공정도이고, 도 4는 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법의 각 점에 대한 로봇 TCP(Tool Center Point) 위치와 로봇 툴의 진입 각도 계산 후 트래킹 좌표 리스트 추출하여 위치좌표와 수직벡터를 유도하는 단계를 나타내는 공정도이고, 도 5는 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법의 시작점과 끝점 선택 시 생성되는 평면을 나타내는 도면이고, 도 6은 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법의 평면과 각 삼각형 사이의 교차점을 나타내는 도면이고, 도 7은 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법의 트래킹 순서를 나타내는 도면이고, 도 8은 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법의 트래킹 점의 수직 벡터를 구하는 과정을 나타내는 도면이고, 도 9는 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법의 로봇 툴 진입각도와 관련 좌표계를 나타내는 도면이다.
도 1에서 보는 바와 같이, 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 시스템은, 입력 처리부(100); 로봇 동기부(200); 트래킹 경로 연산부(300); 좌표 변환부(400); 출력부(500)를 포함하여 이루어진다.
이러한 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 시스템의 입력 처리부(100)는, 대상물의 STL 전자파일에 저장된 다수 개의 점 위치 데이터를 분석하여 사용자가 선택한 점의 위치 정보, 수직 벡터 등을 추출하도록 구성된다.
이러한 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 시스템의 대상물의 로봇 동기부(200)는, 입력 처리부(100)에 입력된 다수 개의 점 좌표와 해당 점에 대한 실제 로봇의 좌표를 이용하여 STL 기준좌표계와 로봇 기준좌표계 사이의 관계를 계산하도록 구성된다.
이러한 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 시스템의 대상물의 트래킹 경로 연산부(300)는, 입력 처리부(100)에 입력된 트래킹의 시작과 끝을 의미하는 2점 사이의 트래킹 방향 및 경로를 계산하고, 상기 2점 사이의 다수 개의 점 좌표를 추출하도록 구성된다.
이러한 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 시스템의 대상물의 좌표 변환부(400)는, 경로 연산부(300)의 결과인 STL 기준좌표계에 대한 각 좌표와 방향에 대해 로봇 기준좌표계에 대한 좌표와 방향으로 변환하도록 구성된다.
이러한 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 시스템의 대상물의 출력부(500)는, 좌표 변환부(400)로부터 얻은 로봇 좌표 정보를 실제 로봇 제어기로 전송하도록 구성된다.
도 2 내지 도 9를 살펴보면, 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법은, (a) 실제 로봇의 기준 좌표계와 STL 데이터의 기준 좌표계 사이의 관계를 계산하는 단계(S100); (b) 상기 (a) 단계가 완료되면, 대상물의 STL 형태의 데이터에서 시작점과 끝점 선택 시, 상기 시작점과 끝점의 위치와 해당 점이 포함된 2개의 삼각형의 수직한 방향을 의미하는 수직 벡터 정보를 이용하여 평면을 생성하고 트래킹 방향을 결정하는 단계(S200); (c) 상기 (b) 단계에서 생성된 평면과 STL 상의 다수 개의 삼각형과의 교차점을 추출하는 단계(S300); (d) 상기 (c) 단계에서 추출된 다수 개의 교차점을 사용자가 선택한 시작점에서 끝점 방향 순서대로 재배치하는 단계(S400); (e) 상기 (d) 단계가 완료되면, 상기 (a) 단계에서 유도된 관계식을 이용하여 각 점에 대한 로봇 TCP(Tool Center Point) 위치와 로봇 툴의 진입 각도 계산 후 트래킹 좌표 리스트 추출하여 위치좌표와 수직벡터를 유도하는 단계(S500);를 포함하여 이루어진다.
본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법의 (a) 단계(S100)는, 아래와 같은 (aa ~ ah) 단계(S110 ~ S180)를 포함하여 이루어지는 것을 특징으로 한다.
이러한 본 발명의 (aa) 단계(S110)는, 로봇 작업에 사용할 대상물을 실제 작업 위치(i)에 위치시키고 로봇을 이동시켜 로봇 좌표계를 기준으로 하는 해당 점의 좌표
Figure 112016087683991-pat00001
을 구하는 단계로 구성된다.
이러한 본 발명의 (ab) 단계(S120)는, 상기 (aa) 단계에서 로봇 좌표계를 기준으로 하는 해당 점과 동일한 점을 STL 데이터에서 선택하여 STL 좌표계를 기준으로 하는 좌표
Figure 112016087683991-pat00002
을 구하는 단계로 구성된다.
이러한 본 발명의 (ac) 단계(S130)는, 하기 일반식(1)로 나타내어지는 상기 (aa) 단계에서 구한 좌표
Figure 112016087683991-pat00003
와, 상기 (ab) 단계에서 구한 좌표
Figure 112016087683991-pat00004
의 n개의 점에 대한 차이의 합을 의미하는 거리함수 f를 구하는 단계로 구성된다. 이 때, 상기 두 좌표는 실제 동일한 점이므로 거리함수가 0에 가까워야 한다.
Figure 112016087683991-pat00005
(1)
(식 중, P(Position): 위치를 의미하고 R(Rotaion Matrix): 회전행렬을 의미한다. R은 로봇좌표계를, C는 STL(CAD)좌표계를 의미하고,
Figure 112016087683991-pat00006
는 로봇 좌표계 R을 기준으로 한 STL 좌표계 C의 방향을 의미하는 회전행렬, (
Figure 112016087683991-pat00007
)은 로봇 좌표계 R을 기준으로 한 STL 좌표계 C의 원점까지의 위치벡터를 나타내며, org는 원점을 표시한다.)
이러한 본 발명의 (ad) 단계(S140)는, 하기 일반식(2)로 나타내어지는 상기 (aa) 단계와 상기 (ab) 단계에서 구한 n개의 점의 각 중간점의 좌표인
Figure 112016087683991-pat00008
을 계산하는 단계로 구성된다.
Figure 112016087683991-pat00009
,
Figure 112016087683991-pat00010
(2)
(식 중,
Figure 112016087683991-pat00011
은 n개의 STL 좌표계를 기준으로 하는 좌표
Figure 112016087683991-pat00012
에 대한 중간점의 좌표와 로봇 좌표계를 기준으로 하는 해당 점의 좌표
Figure 112016087683991-pat00013
의 중간점의 좌표를 의미한다.)
이러한 본 발명의 (ae) 단계(S150)는, 하기 일반식(3)으로 나타내어지는 상기 (aa) 단계와 상기 (ab) 단계에서 구한 n개의 점 좌표로부터 상기 (ad)단계에서 구한
Figure 112016087683991-pat00014
과의 차이
Figure 112016087683991-pat00015
,
Figure 112016087683991-pat00016
을 계산하는 단계로 구성된다.
Figure 112016087683991-pat00017
,
Figure 112016087683991-pat00018
(3)
(식 중,
Figure 112016087683991-pat00019
,
Figure 112016087683991-pat00020
는 각 좌표와 중간점 사이의 차이를 의미하는 벡터이다.)
이러한 본 발명의 (af) 단계(S160)는, 하기 일반식(4)로 나타내어지는 상기 (ac) 단계에서 구한 거리함수 f에, 상기 (ae) 단계에서 구한 일반식 (3)을 대입하여 새로운 거리함수 f를 유도하는 단계로 구성된다.
Figure 112016087683991-pat00021
(4)
(식 중,
Figure 112016087683991-pat00022
는 로봇 좌표계, R을 기준으로 한 STL 좌표계 C의 방향을 의미하는 회전행렬을 나타낸다.)
이러한 본 발명의 (ag) 단계(S170)는, 하기 일반식(6)으로 나타내어지는 상기 (af) 단계에서 구한 거리함수 f 가 0이 되도록 만족시키는 로봇 좌표계를 기준으로 한 좌표계의 방향을 의미하는 회전행렬(
Figure 112016087683991-pat00023
)을 유도하기 위해, 하기 일반식(5)로 나타내어지는 상기 (ae) 단계에서 구한
Figure 112016087683991-pat00024
,
Figure 112016087683991-pat00025
을 행렬 X, Y 로 조합하여 U, V 행렬을 유도한 후 회전행렬(
Figure 112016087683991-pat00026
)를 계산하는 단계로 구성된다.
Figure 112016087683991-pat00027
(5)
Figure 112016087683991-pat00028
(6)
(식 중, X는 n개의
Figure 112018029531014-pat00029
벡터들을 열로 가지는 3*n 크기의 행렬이고, Y는 n개의
Figure 112018029531014-pat00030
벡터들을 열로 가지는 3*n 크기의 행렬이다. 이 때, T 는 행렬의 전치행렬(Transpose)를 의미하고, 행렬 X와 Y의 전치행렬인 YT를 곱한 행렬 S를 SVD(Singular Value Decomposition) 방법을 이용하여 계산한 결과가 U, M, V 이다. M 행렬은 고유값의 제곱근을 대각원소로 가진다.)
이러한 본 발명의 (ah) 단계(S180)는, 하기 일반식(7)로 나타내어지는 로봇 원점을 기준으로 한 STL 좌표계 원점의 위치벡터를 유도하는 단계로 구성된다.
Figure 112016087683991-pat00031
(7)
(식 중,
Figure 112016087683991-pat00032
은 로봇 좌표계 R을 기준으로 한 STL 좌표계 C의 원점까지의 위치벡터를 나타내며, org는 원점을 표시한다.)
본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법의 (b) 단계(S200)는, STL 데이터 상에서 궤적 시작점과 끝점을 선택하여, 상기 시작점과 끝점을 포함한 삼각형의 수직 벡터를 찾고, 상기 시작점의 수직 벡터와 끝점의 수직 벡터를 각각
Figure 112016087683991-pat00033
Figure 112016087683991-pat00034
라 하면, 상기 두 벡터를 포함하는 평면을 생성한다. 이 때,
Figure 112016087683991-pat00035
은 수직 벡터(normal vector)를 의미하고, SE는 각각 시작(start)과 끝(end)를 의미한다.
본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법의 (c) 단계(S300)는, 아래와 같은 (ca ~ cb) 단계(S310 ~ S320)를 포함하여 이루어지는 것을 특징으로 한다.
이러한 본 발명의 (ca) 단계(S310)는, 결정된 평면이 대상물의 STL 내의 다수 개의 삼각형들과 교차하는 점을 구하기 위하여 하기 일반식(8)로 나타내어지는 STL 기준좌표계의 원점에 대한 삼각형의 꼭지점 벡터
Figure 112016087683991-pat00036
와 또 다른 꼭지점 벡터
Figure 112016087683991-pat00037
로부터 한 변의 교차점에 대한 벡터
Figure 112016087683991-pat00038
를 구하는 단계로 구성된다.
Figure 112016087683991-pat00039
(8)
(식 중,
Figure 112016087683991-pat00040
를 의미하고,
Figure 112016087683991-pat00041
,
Figure 112016087683991-pat00042
, 에서
Figure 112016087683991-pat00043
는 평면과 꼭지점 i 사이의 거리,
Figure 112016087683991-pat00044
는 평면과 꼭지점 j 사이의 거리,
Figure 112016087683991-pat00045
는 STL 기준좌표계의 원점과 평면사이의 거리이다.)
이러한 본 발명의 (cb) 단계(S320)는, 상기 (ca) 단계에서의 벡터
Figure 112016087683991-pat00046
를 삼각형의 모든 변에 수행하여 모든 교차점을 구하는 단계로 구성된다.
본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법의 (d) 단계(S400)는, 상기 (cb) 단계(S320)에서 추출된 교차점은 교차점을 계산할 때의 해당 삼각형 번호와 각 점에 대한 STL 원점으로부터의 위치 벡터, 각 삼각형의 수직 벡터로 구성되어 다수 개의 트래킹 점이 재배치되는 것을 특징으로 한다.
이러한 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법의 (d) 단계(S400)에서 재배치(교차점 데이터를 정리)하는 과정은, 아래 [표 1] 내지 [표 3]와 같다.
먼저, (c) [표 1]과 같이 단계(S300)에서 추출된 교차점은 교차점을 계산할 때의 해당 삼각형 번호와 각 점에 대한 STL 원점으로부터의 위치 벡터, 각 삼각형의 수직 벡터로 구성되어 있다. 이 때 각 점에 대한 위치 벡터들을 비교하여 동일한 점에 대해서는 [표 2]와 같이 동일한 교차점 index 번호를 부여한다. 모든 점에 교차점 index 번호를 부여한 이후에는 [표 3]과 같이 동일한 점들을 하나로 정리하여 각 점이 포함된 두 삼각형 번호, 두 삼각형의 각 수직 벡터 등을 포함한 데이터 구조를 가지도록 구성한다.
[표 3]과 같이 정리된 교차점으로부터 로봇의 트래킹 점을 구하기 위해 STL 데이터 상에서 선택한 궤적 시작점을 트래킹의 시작점으로 한다. 이 후 이 시작점이 포함된 삼각형 번호와 동일한 삼각형 index를 가지는 교차점 2개 중에서 트래킹 방향에 위치한 한 교차점을 선택하여 트래킹 점에 추가한다. 이 후 이 교차점이 포함된 두 개의 삼각형 중 이전 번호가 아닌 다른 삼각형의 번호를 포함한 교차점을 찾아 다음 트래킹 점에 추가한다. 만약 다음 삼각형의 번호가 STL 데이터 상에서 선택한 궤적의 끝점이 포함된 삼각형인 경우 이 끝점을 트래킹 점에 추가 후 정리 과정을 종료한다. 시작점과 끝점을 제외한 트래킹 점들의 정보에는 인접한 두 개의 삼각형의 수직벡터를 모두 가지고 있으므로, 이 수직벡터를 하나로 정리하기 위해 각 두 수직벡터의 평균값을 계산하여 [표 5]와 같이 하나로 정리한다.
삼각형 index
Figure 112016087683991-pat00047
Figure 112016087683991-pat00048
0
Figure 112016087683991-pat00049
Figure 112016087683991-pat00050
0
Figure 112016087683991-pat00051
Figure 112016087683991-pat00052
1
Figure 112016087683991-pat00053
Figure 112016087683991-pat00054
... ... ...
nt
Figure 112016087683991-pat00055
Figure 112016087683991-pat00056
[표 1]은 교차점 데이터 정리 과정
삼각형 index
Figure 112016087683991-pat00057
Figure 112016087683991-pat00058
교차점 index
0
Figure 112016087683991-pat00059
Figure 112016087683991-pat00060
1
0
Figure 112016087683991-pat00061
Figure 112016087683991-pat00062
2
1
Figure 112016087683991-pat00063
Figure 112016087683991-pat00064
3
... ... ... ...
n
Figure 112016087683991-pat00065
Figure 112016087683991-pat00066
2
[표 2]는 [표 1]에 이은 교차점 데이터 정리 과정
삼각형 index
Figure 112016087683991-pat00067
Figure 112016087683991-pat00068
교차점 index
0 4
Figure 112016087683991-pat00069
Figure 112016087683991-pat00070
Figure 112016087683991-pat00071
1
0 n
Figure 112016087683991-pat00072
Figure 112016087683991-pat00073
Figure 112016087683991-pat00074
2
1 3
Figure 112016087683991-pat00075
Figure 112016087683991-pat00076
Figure 112016087683991-pat00077
3
... ... ... ... ... ...
5 6
Figure 112016087683991-pat00078
Figure 112016087683991-pat00079
Figure 112016087683991-pat00080
np
[표 3]은 [표 2]에 이은 교차점 데이터 정리 과정
트래킹 점 index 삼각형 index
Figure 112016087683991-pat00081
Figure 112016087683991-pat00082
교차점 index
Start 0 0
Figure 112016087683991-pat00083
Figure 112016087683991-pat00084
Figure 112016087683991-pat00085
-
1 0 4
Figure 112016087683991-pat00086
Figure 112016087683991-pat00087
Figure 112016087683991-pat00088
1
... ... ... ... ... ... ...
3 3 7
Figure 112016087683991-pat00089
Figure 112016087683991-pat00090
Figure 112016087683991-pat00091
4
End 7 7
Figure 112016087683991-pat00092
Figure 112016087683991-pat00093
Figure 112016087683991-pat00094
-
[표 4]는 교차점 중에서 트래킹 점을 추출하는 과정
트래킹 점 index 삼각형 index
Figure 112016087683991-pat00095
Figure 112016087683991-pat00096
교차점 index
Start 0 0
Figure 112016087683991-pat00097
Figure 112016087683991-pat00098
-
1 0 4
Figure 112016087683991-pat00099
Figure 112016087683991-pat00100
1
... ... ... ... ... ...
3 3 7
Figure 112016087683991-pat00101
Figure 112016087683991-pat00102
4
End 7 7
Figure 112016087683991-pat00103
Figure 112016087683991-pat00104
-
[표 5]는 교차점 중에서 트래킹 점을 추출하는 과정
본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법의 (e) 단계(S500)는, 아래와 같은 (ea ~ ef) 단계(S510 ~ S560)를 포함하여 이루어지는 것을 특징으로 한다.
이러한 본 발명의 (ea) 단계(S510)는, 상기 (d) 단계(S400)에서 재배치된 다수 개의 트래킹 점의 데이터가 순서대로 정리되는 단계로 구성된다.
이러한 본 발명의 (eb) 단계(S520)는, 상기 다수 개의 교차점은 STL 기준좌표계를 기준으로 한 것으로, 상기 다수 개의 교차점에 대해 로봇이 작업을 하기 위해서 하기 일반식(9)로 나타내어지는 로봇 좌표계를 기준으로 한 위치 벡터를 유도하는 단계로 구성된다.
Figure 112016087683991-pat00105
(9)
(식 중, P(Position): 위치를 의미하고 R(Rotaion Matrix): 회전행렬을 의미하고, R은 로봇좌표계를, C는 STL(CAD)좌표계를 의미한다.)
이러한 본 발명의 (ec) 단계(S530)는, 상기 로봇 툴이 해당 위치로 진입하는 각도를 계산하기 위해 하기 일반식(10)과 같이 해당 점에서의 STL 상에서의 수직벡터를 구하는 단계로 구성된다.
Figure 112016087683991-pat00106
(10)
(식 중,
Figure 112016087683991-pat00107
,
Figure 112016087683991-pat00108
,
Figure 112016087683991-pat00109
은 좌표계의 X, Y, Z 방향을 나타내는 단위 벡터이다.)
이러한 본 발명의 (ed) 단계(S540)는, 상기(ec) 단계의 수직벡터를 z축으로 하여 삼각형의 기준좌표계(P')를 설정하기 위해서 x축은 타켓 점과 해당 삼각형의 꼭지점 중 한 점을 연결하는 축으로 하며, 하기 일반식(11)에 의해 계산되어지는 y축으로서 하기 일반식(12)로 나타내어지는 STL 기준좌표계에 대한 삼각형의 기준좌표계(P')의 회전행렬(
Figure 112016087683991-pat00110
)을 구하는 단계로 구성된다.
Figure 112016087683991-pat00111
(11)
Figure 112016087683991-pat00112
(12)
(식 중, P은 STL 기준좌표계에 대한 삼각형의 기준좌표계이다.)
이러한 본 발명의 (ee) 단계(S550)는, 상기(ed) 단계의 회전행렬의 z축과 툴 진입방향 사이의 각도를 α라 하면, 삼각형의 기준좌표계(P')를 y축을 기준으로 각도 α만큼 회전한 새로운 좌표계(P)는 하기 일반식 (13)에 의해 계산되어지므로, 하기 일반식(14)로 나타내어지는 STL 기준좌표계에 대한 삼각형의 기준좌표계(P')를 각도 α만큼 회전한 좌표계(P)의 회전행렬(
Figure 112018029531014-pat00116
)을 구하는 단계로 구성된다.
Figure 112016087683991-pat00117
(13)
Figure 112016087683991-pat00118
(14)
(식 중, P는 삼각형의 기준좌표계(P')를 y축을 기준으로 각도 α만큼 회전한 좌표계이다.)
이러한 본 발명의 (ef) 단계(S560)는, 상기 (ee) 단계의 STL 기준좌표계에 대한 삼각형의 기준좌표계(P')를 각도 α만큼 회전한 좌표계(P)의 회전행렬(
Figure 112018029531014-pat00121
)은 하기 일반식(15)에 의해 로봇좌표계를 기준으로 한 회전행렬(
Figure 112018029531014-pat00122
)로 변환할 수 있으므로, 상기 로봇 툴의 진입은 상기 좌표계(P)의 z축을 기준으로 반대쪽에서 진입하게 되므로 하기 일반식(16)으로 나타내어지는 로봇 툴의 회전행렬(
Figure 112018029531014-pat00123
)을 구하는 단계로 구성된다.
Figure 112016087683991-pat00124
(15)
Figure 112016087683991-pat00125
(16)
또한, 이러한 본 발명의 (ef) 단계(S560)는, 하기 일반식(17)로 나타내어지는 트래킹 점에 대한 수직 벡터(
Figure 112016087683991-pat00126
)를 더 구하도록 구성된다.
Figure 112016087683991-pat00127
(17)
이러한 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로는 아래와 같은 순서로 생성된다.
1. 로봇 작업에 사용할 대상물을 실제 작업 위치(i)에 위치시키고 로봇을 이동시켜 로봇 좌표계를 기준으로 하는 해당 점의 좌표와 STL 좌표계를 기준으로 하는 좌표를 구하여 [도 3]과 같은 계산 단계를 거쳐 실제 로봇의 기준 좌표계와 STL 데이터의 기준 좌표계 사이의 관계를 계산한다.
2. [도 5]와 같이 STL 데이터 상에서 궤적 시작점과 끝점을 선택하여, 상기 시작점과 끝점을 포함한 삼각형의 수직 벡터를 찾고, 상기 시작점의 수직 벡터와 끝점의 수직 벡터를 포함하는 평면을 생성한다.
3. [도 6]과 같이 위 평면이 대상물의 STL 내의 다수 개의 삼각형들과 교차하는 점을 구한다.
4. [도 7]과 같이 각 교차점들 중에서 시작점으로부터 끝점 사이의 교차점들을 정리한 후 트래킹 점들을 결정한다.
5. [도 8]과 같이 각 트래킹 점들의 수직벡터를 계산한다.
6. [도 9]와 같이 각 트래킹 점에 대한 위치와 수직벡터를 이용하여 로봇 툴의 진입 위치와 진입 각도를 계산한다.
이와 같은 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 시스템 및 그 방법은 다음과 같은 이점이 있다.
먼저, 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 시스템은 CAD 소프트웨어인 STL 파일에서 대상물과 로봇 사이의 위치 관계를 구하고, 대상물의 CAD 상 임의의 점 선택 시 해당 점 위치 데이터를 실제 로봇의 좌표로 변환하고, 트래킹 시작점과 끝점을 선택 시 물체의 표면을 트래킹하며 해당 점 사이를 이동할 수 있는 경로를 생성한다.
그러므로 일반적인 산업용 로봇의 경우 로봇이 다루고자 하는 물체 상의 임의의 점을 접촉하거나 또는 물체 상의 점들을 따라 이동하는 트래킹 작업을 하는 경우에는 작업자가 직접 로봇의 교시장치를 조작하는 교시 과정이 필요하다. 교시 과정은 실제 로봇을 원하는 점으로 이동시킨 후 해당 자세 정보를 제어기에 저장하고 원하는 경로를 생성하기 위해서는 그 중간 위치들을 동일한 방법으로 기억시키는 과정으로 교시 과정을 마친 후 저장된 위치 점들을 거치는 로봇 프로그램을 직접 작성 후에 로봇을 동작시키게 된다.
따라서 본 발명은 대상물의 CAD 형상을 이용하여 실제 교시 없이 CAD 상의 임의의 점을 선택 시 로봇의 위치를 생성할 수 있어 로봇 조작에 숙련된 전문 작업자가 필요 없고, 로봇의 대상물이 바뀌거나 주변 환경이 바뀌는 경우에 매번 동일한 과정을 거쳐야 하는 교시 과정을 생략할 수 있어 작업능률을 극대화 할 수 있다.
또한, 본 발명의 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 시스템은 본 발명에 따른 연산 방법과 프로그램을 통해 물체의 CAD 정보로부터 로봇이 위치할 좌표와 경로를 자동적으로 생성할 수 있다.
그러므로 본 발명은 일반적인 CAD 제작 S/W에서 생성할 수 있는 STL 파일 정보를 이용할 수 있다.
따라서 사용자가 별도의 입력 데이터를 생성할 필요가 없어 작업 대응 능력이 우수한 장점을 가지고 있다.
또한, 본 발명은 수치적인 형상 정보를 이용하여 자동적으로 계산하기 때문에, 로봇의 이동 궤적이 복잡한 작업이나 대상물의 형상이 곡선부를 포함하는 용접 등의 작업 적용이 가능하여 생산성을 향상시킬 수 있다.
또한, 일반적으로 동일한 대상물의 작업 위치를 변경하였을 경우, 기존에는 작업자가 모든 점에 대해서 새로 교시 작업을 수행해야 하나, 본 발명은 실제 로봇의 기준 좌표계와 STL 데이터의 기준 좌표계 사이의 관계를 계산하는 단계만 재실행하면 새롭게 변경된 위치에서도 트래킹 작업을 수행할 수 있는 장점이 있다.
100 : 입력 처리부
200 : 로봇 동기부
300 : 트래킹 경로 연산부
400 : 좌표 변환부
500 : 출력부

Claims (7)

  1. 삭제
  2. 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법에 관한 것으로서,
    (a) 실제 로봇의 기준 좌표계와 STL 데이터의 기준 좌표계 사이의 관계를 계산하는 단계(S100);
    (b) 상기 (a) 단계가 완료되면, 대상물의 STL 형태의 데이터에서 시작점과 끝점 선택 시, 상기 시작점과 끝점의 위치와 해당 점이 포함된 2개의 삼각형의 수직한 방향을 의미하는 수직 벡터 정보를 이용하여 평면을 생성하고 트래킹 방향을 결정하는 단계(S200);
    (c) 상기 (b) 단계에서 생성된 평면과 STL 상의 다수 개의 삼각형과의 교차점을 추출하는 단계(S300);
    (d) 상기 (c) 단계에서 추출된 다수 개의 교차점을 사용자가 선택한 시작점에서 끝점 방향 순서대로 재배치하는 단계(S400);
    (e) 상기 (d) 단계가 완료되면, 상기 (a) 단계에서 유도된 관계식을 이용하여 각 점에 대한 로봇 TCP(Tool Center Point) 위치와 로봇 툴의 진입 각도 계산 후 트래킹 좌표 리스트를 추출하여 위치좌표와 수직벡터를 유도하는 단계(S500);를 포함하여 이루어지는 것을 특징으로 하는 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법.
  3. 청구항 2에 있어서,
    상기 (a) 단계(S100)는,
    (aa) 로봇 작업에 사용할 대상물을 실제 작업 위치(i)에 위치시키고 로봇을 이동시켜 로봇 좌표계를 기준으로 하는 해당 점의 좌표
    Figure 112018029531014-pat00128
    을 구하는 단계(S110);
    (ab) 상기 (aa) 단계에서 로봇 좌표계를 기준으로 하는 해당 점과 동일한 점을 STL 데이터에서 선택하여 STL 좌표계를 기준으로 하는 좌표
    Figure 112018029531014-pat00129
    을 구하는 단계(S120);
    (ac) 하기 일반식(1)로 나타내어지는 상기 (aa) 단계에서 구한 좌표
    Figure 112018029531014-pat00130
    와, 상기 (ab) 단계에서 구한 좌표
    Figure 112018029531014-pat00131
    의 n개의 점에 대한 차이의 합을 의미하는 거리함수 f를 구하는 단계(S130);
    (ad) 하기 일반식(2)로 나타내어지는 상기 (aa) 단계와 상기 (ab) 단계에서 구한 n개의 점의 각 중간점의 좌표인
    Figure 112018029531014-pat00132
    을 계산하는 단계(S140);
    (ae) 하기 일반식(3)으로 나타내어지는 상기 (aa) 단계와 상기 (ab) 단계에서 구한 n개의 점 좌표로부터 상기 (ad)단계에서 구한
    Figure 112018029531014-pat00133
    과의 차이
    Figure 112018029531014-pat00134
    ,
    Figure 112018029531014-pat00135
    을 계산하는 단계(S150);
    (af) 하기 일반식(4)로 나타내어지는 상기 (ac) 단계에서 구한 거리함수 f에, 상기 (ae) 단계에서 구한 일반식 (3)을 대입하여 새로운 거리함수 f를 유도하는 단계(S160);
    (ag) 하기 일반식(6)으로 나타내어지는 상기 (af) 단계에서 구한 거리함수 f 가 0이 되도록 만족시키는 로봇 좌표계를 기준으로 한 좌표계의 방향을 의미하는 회전행렬(
    Figure 112018029531014-pat00136
    )을 유도하기 위해, 하기 일반식(5)로 나타내어지는 상기 (ae) 단계에서 구한
    Figure 112018029531014-pat00137
    ,
    Figure 112018029531014-pat00138
    을 행렬 X, Y 로 조합하여 U, V 행렬을 유도한 후 회전행렬(
    Figure 112018029531014-pat00139
    )를 계산하는 단계(S170);
    (ah) 하기 일반식(7)로 나타내어지는 로봇 원점을 기준으로 한 STL 좌표계 원점의 위치벡터를 유도하는 단계(S180);를 포함하여 이루어지는 것을 특징으로 하는 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법.
    [일반식]
    Figure 112018029531014-pat00140
    (1)
    Figure 112018029531014-pat00141
    ,
    Figure 112018029531014-pat00142
    (2)
    Figure 112018029531014-pat00143
    ,
    Figure 112018029531014-pat00144
    (3)
    Figure 112018029531014-pat00145
    (4)
    Figure 112018029531014-pat00146
    (5)
    Figure 112018029531014-pat00147
    (6)
    Figure 112018029531014-pat00148
    (7)
    (식 중, P(Position): 위치를 의미하고 R(Rotaion Matrix): 회전행렬을 의미한다. R은 로봇좌표계를, C는 STL(CAD)좌표계를 의미하고,
    Figure 112018029531014-pat00149
    는 로봇 좌표계 R을 기준으로 한 STL 좌표계 C의 방향을 의미하는 회전행렬, (
    Figure 112018029531014-pat00150
    )은 로봇 좌표계 R을 기준으로 한 STL 좌표계 C의 원점까지의 위치벡터를 나타내며, org는 원점을 표시한다.
    Figure 112018029531014-pat00151
    은 n개의 STL 좌표계를 기준으로 하는 좌표
    Figure 112018029531014-pat00152
    에 대한 중간점의 좌표와 로봇 좌표계를 기준으로 하는 해당 점의 좌표
    Figure 112018029531014-pat00153
    의 중간점의 좌표를 의미하며,
    Figure 112018029531014-pat00154
    ,
    Figure 112018029531014-pat00155
    는 각 좌표들과 중간점 사이의 차이를 의미하는 벡터이다. X는 n개의
    Figure 112018029531014-pat00156
    벡터들을 열로 가지는 3*n 크기의 행렬이고, Y는 n개의
    Figure 112018029531014-pat00157
    벡터들을 열로 가지는 3*n 크기의 행렬이다. 이 때, T 는 행렬의 전치행렬(Transpose)를 의미한다. 이때 행렬 X와 Y의 전치행렬인 YT를 곱한 행렬 S를 SVD(Singular Value Decomposition) 방법을 이용하여 계산한 결과가 U, M, V 이다. M 행렬은 고유값의 제곱근을 대각원소로 가진다.)
  4. 청구항 3에 있어서,
    상기 (b) 단계(S200)는,
    상기 STL 데이터 상에서 궤적 시작점과 끝점을 선택하여, 상기 시작점과 끝점을 포함한 삼각형의 수직 벡터를 찾고, 상기 시작점의 수직 벡터와 끝점의 수직 벡터를 각각
    Figure 112018029531014-pat00158
    Figure 112018029531014-pat00159
    라 하면, 상기 두 벡터를 포함하는 평면을 생성하는 것을 특징으로 하는 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법.
  5. 청구항 4에 있어서,
    상기 (c) 단계(S300)는,
    (ca) 상기 결정된 평면이 대상물의 STL 내의 다수 개의 삼각형들과 교차하는 점을 구하기 위하여 하기 일반식(8)로 나타내어지는 STL 기준좌표계의 원점에 대한 삼각형의 꼭지점 벡터
    Figure 112016087683991-pat00160
    와 또 다른 꼭지점 벡터
    Figure 112016087683991-pat00161
    로부터 한 변의 교차점에 대한 벡터
    Figure 112016087683991-pat00162
    를 구하는 단계(S310);
    (cb) 상기 (ca) 단계에서의 벡터
    Figure 112016087683991-pat00163
    를 삼각형의 모든 변에 수행하여 모든 교차점을 구하는 단계(S320);를 포함하여 이루어지는 것을 특징으로 하는 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법.
    [일반식]
    Figure 112016087683991-pat00164
    (8)
    (식 중,
    Figure 112016087683991-pat00165
    를 의미하고,
    Figure 112016087683991-pat00166
    ,
    Figure 112016087683991-pat00167
    , 에서
    Figure 112016087683991-pat00168
    는 평면과 꼭지점 i 사이의 거리,
    Figure 112016087683991-pat00169
    는 평면과 꼭지점 j 사이의 거리, h 는 STL 기준좌표계의 원점과 평면사이의 거리이다.)
  6. 청구항 5에 있어서,
    상기 (d) 단계(S400)는,
    상기 (cb) 단계에서 추출된 교차점은 교차점을 계산할 때의 해당 삼각형 번호와 각 점에 대한 STL 원점으로부터의 위치 벡터, 각 삼각형의 수직 벡터로 구성되어 다수 개의 트래킹 점이 재배치되는 것을 특징으로 하는 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법.
  7. 청구항 6에 있어서,
    상기 (e) 단계(S500)은,
    (ea) 상기 (d) 단계에서 재배치된 다수 개의 트래킹 점의 데이터가 순서대로 정리되는 단계(S510);
    (eb) 상기 다수 개의 교차점은 STL 기준좌표계를 기준으로 한 것으로, 상기 다수 개의 교차점에 대해 로봇이 작업을 하기 위해서 하기 일반식(9)로 나타내어지는 로봇 좌표계를 기준으로 한 위치 벡터를 유도하는 단계(S520);
    (ec) 상기 로봇 툴이 해당 위치로 진입하는 각도를 계산하기 위해 하기 일반식(10)과 같이 해당 점에서의 STL 상에서의 수직벡터를 구하는 단계(S530);
    (ed) 상기(ec) 단계의 수직벡터를 z축으로 하여 삼각형의 기준좌표계(P')를 설정하기 위해서 x축은 타켓 점과 해당 삼각형의 꼭지점 중 한 점을 연결하는 축으로 하며, 하기 일반식(11)에 의해 계산되어지는 y축으로서 하기 일반식(12)로 나타내어지는 STL 기준좌표계에 대한 삼각형의 기준좌표계(P')의 회전행렬(
    Figure 112018029531014-pat00170
    )을 구하는 단계(S540);
    (ee) 상기(ed) 단계의 회전행렬의 z축과 툴 진입방향 사이의 각도를 α라 하면, 삼각형의 기준좌표계(P')를 y축을 기준으로 각도 α만큼 회전한 새로운 좌표계(P)는 하기 일반식 (13)에 의해 계산되어지므로, 하기 일반식(14)로 나타내어지는 STL 기준좌표계에 대한 삼각형의 기준좌표계(P')를 각도 α만큼 회전한 좌표계(P)의 회전행렬(
    Figure 112018029531014-pat00174
    )을 구하는 단계(S550);
    (ef) 상기 (ee) 단계의 STL 기준좌표계에 대한 삼각형의 기준좌표계(P')를 각도 α만큼 회전한 좌표계(P)의 회전행렬(
    Figure 112018029531014-pat00176
    )은 하기 일반식(15)에 의해 로봇좌표계를 기준으로 한 회전행렬(
    Figure 112018029531014-pat00177
    )로 변환할 수 있으므로, 상기 로봇 툴의 진입은 상기 좌표계(P)의 z축을 기준으로 반대쪽에서 진입하게 되므로 하기 일반식(16)으로 나타내어지는 로봇 툴의 회전행렬(
    Figure 112018029531014-pat00178
    )을 구하는 단계(S560);를 포함하여 이루어지며,
    상기 (ef) 단계는, 하기 일반식(17)로 나타내어지는 트래킹 점에 대한 수직 벡터(
    Figure 112018029531014-pat00179
    )를 더 구하는 것을 특징으로 하는 대상물의 CAD 형상을 이용한 로봇의 위치 및 트래킹 경로 생성방법.
    [일반식]
    Figure 112018029531014-pat00180
    (9)
    Figure 112018029531014-pat00181
    (10)
    Figure 112018029531014-pat00182
    (11)
    Figure 112018029531014-pat00183
    (12)
    Figure 112018029531014-pat00184
    (13)
    Figure 112018029531014-pat00185
    (14)
    Figure 112018029531014-pat00186
    (15)
    Figure 112018029531014-pat00187
    (16)
    Figure 112018029531014-pat00188
    (17)
    (식 중, P(Position): 위치를 의미하고 R(Rotaion Matrix): 회전행렬을 의미함. R은 로봇좌표계를, C는 STL(CAD)좌표계를 의미하고, T는 툴(Tool)좌표계를 의미함.
    Figure 112018029531014-pat00189
    ,
    Figure 112018029531014-pat00190
    ,
    Figure 112018029531014-pat00191
    은 좌표계의 X, Y, Z 방향을 나타내는 단위 벡터임. P는 STL 기준좌표계에 대한 삼각형의 기준좌표계이고, P는 삼각형의 기준좌표계(P')를 각도 α만큼 회전한 좌표계이다.)











KR1020160115476A 2016-09-08 2016-09-08 대상물의 cad 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법 KR101845079B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160115476A KR101845079B1 (ko) 2016-09-08 2016-09-08 대상물의 cad 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160115476A KR101845079B1 (ko) 2016-09-08 2016-09-08 대상물의 cad 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법

Publications (2)

Publication Number Publication Date
KR20180028155A KR20180028155A (ko) 2018-03-16
KR101845079B1 true KR101845079B1 (ko) 2018-04-03

Family

ID=61910459

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160115476A KR101845079B1 (ko) 2016-09-08 2016-09-08 대상물의 cad 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법

Country Status (1)

Country Link
KR (1) KR101845079B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102096897B1 (ko) * 2018-12-31 2020-04-03 (주) 엠엔비젼 3d 도면 파일을 이용하여 로봇 제어에 필요한 자동 티칭 시스템 및 티칭 방법
CN112882380B (zh) * 2021-01-07 2022-06-14 上海交通大学 时序逻辑任务下多无人艇系统协同控制方法、终端及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002108426A (ja) 2000-09-28 2002-04-10 Shibuya Kogyo Co Ltd 3次元加工システムにおけるncデータ作成方法および3次元加工システム
JP2004021850A (ja) * 2002-06-19 2004-01-22 Mitsubishi Heavy Ind Ltd モデル加工方法およびモデル加工システム、並びにモデル加工用プログラム
JP2007220128A (ja) * 2007-03-12 2007-08-30 Mitsubishi Heavy Ind Ltd モデル加工方法およびモデル加工システム
KR100994742B1 (ko) 2010-05-04 2010-11-16 주식회사 덕인 3차원 측정기의 이동 경로에 대한 충돌 검출 및 경과점 생성 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002108426A (ja) 2000-09-28 2002-04-10 Shibuya Kogyo Co Ltd 3次元加工システムにおけるncデータ作成方法および3次元加工システム
JP2004021850A (ja) * 2002-06-19 2004-01-22 Mitsubishi Heavy Ind Ltd モデル加工方法およびモデル加工システム、並びにモデル加工用プログラム
JP2007220128A (ja) * 2007-03-12 2007-08-30 Mitsubishi Heavy Ind Ltd モデル加工方法およびモデル加工システム
KR100994742B1 (ko) 2010-05-04 2010-11-16 주식회사 덕인 3차원 측정기의 이동 경로에 대한 충돌 검출 및 경과점 생성 방법

Also Published As

Publication number Publication date
KR20180028155A (ko) 2018-03-16

Similar Documents

Publication Publication Date Title
JP3797986B2 (ja) ロボットオフラインシミュレーション装置
JP3971773B2 (ja) ロボットのオフライン教示装置
CN105302959B (zh) 一种六轴磨抛工业机器人离线编程方法
US7027963B2 (en) Simulation system
CN105066831A (zh) 一种单一或多机器人系统协同工作坐标系的标定方法
JP2010184278A (ja) 溶接線選定方法
Jovanović et al. Robotic fabrication of freeform foam structures with quadrilateral and puzzle shaped panels
KR101845079B1 (ko) 대상물의 cad 형상을 이용한 로봇의 위치 및 트래킹 경로 생성 방법
CN114260908B (zh) 机器人示教方法、装置、计算机设备和计算机程序产品
Funes-Lora et al. A novel mesh following technique based on a non-approximant surface reconstruction for industrial robotic path generation
JP5673489B2 (ja) 点群データの処理装置、処理方法、処理プログラム及び記録媒体
CN114611362A (zh) 一种大型器械工作面的安装调试方法、电子装置及介质
CN113894800A (zh) 一种基于多点示教的规则网格焊接方法、装置、终端及存储介质
CN107066654B (zh) 面向点云模型的包容盒面的轨迹控制点拾取方法和装置
JP5291482B2 (ja) ロボット教示プログラム修正装置
JP2006072673A (ja) 溶接ロボットのポジショナ設定方法
WO2020133882A1 (zh) 一种机器人应用于再现机加工的方法
JP5241573B2 (ja) 3次元形状データの穴削除方法
KR102432444B1 (ko) 곡가공 검사 시스템 및 방법, 동 방법을 컴퓨터에서 실행하기 위한 컴퓨터 프로그램이 기록된, 컴퓨터 판독 가능한 기록 매체
WO2022181500A1 (ja) 視覚センサの出力から得られる3次元位置情報を用いるシミュレーション装置
Montoya-Zapata et al. Cylindrical transform slicing of revolute parts with overhangs for laser metal deposition
CN118103155A (zh) 作业辅助装置和作业辅助方法
KR20010044586A (ko) 얼굴 근육 운동 예측 맵을 이용한 3차원 얼굴 애니메이션구현 시스템 및 방법
JP2007286858A (ja) 面モデルの作成装置と作成方法
WO2023227196A1 (en) Method of controlling movements of industrial robot, and robot system

Legal Events

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