KR101337650B1 - 실시간 위빙 모션 제어 장치 및 그 방법 - Google Patents

실시간 위빙 모션 제어 장치 및 그 방법 Download PDF

Info

Publication number
KR101337650B1
KR101337650B1 KR1020110113482A KR20110113482A KR101337650B1 KR 101337650 B1 KR101337650 B1 KR 101337650B1 KR 1020110113482 A KR1020110113482 A KR 1020110113482A KR 20110113482 A KR20110113482 A KR 20110113482A KR 101337650 B1 KR101337650 B1 KR 101337650B1
Authority
KR
South Korea
Prior art keywords
weaving
motion
unit
time
robot
Prior art date
Application number
KR1020110113482A
Other languages
English (en)
Other versions
KR20130048566A (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 KR1020110113482A priority Critical patent/KR101337650B1/ko
Priority to PCT/KR2012/008059 priority patent/WO2013065955A1/ko
Priority to JP2014538695A priority patent/JP5858168B2/ja
Priority to US14/356,113 priority patent/US9302390B2/en
Priority to CN201280054048.XA priority patent/CN104023922B/zh
Priority to DE112012004592.0T priority patent/DE112012004592B4/de
Publication of KR20130048566A publication Critical patent/KR20130048566A/ko
Application granted granted Critical
Publication of KR101337650B1 publication Critical patent/KR101337650B1/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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49384Control of oscillatory movement like filling a weld, weaving

Landscapes

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

Abstract

본 발명은 실시간 위빙 모션 제어 장치 및 제어 방법에 관한 것이다.
본 발명은 작업 공간 상의 로봇의 동작을 제어하기 위해, 상기 작업 공간 상에서 상기 로봇의 주 이동 경로를 결정하고, 상기 결정된 주 이동 경로를 구성하는 단위 모션을 발생시키며, 단위 모션이 연결된 연속 모션 중 오프셋을 동적으로 변경하는 위빙을 발생시키고, 상기 작업 환경에 따라 결정되는 보상 변위 또는 보상 회전량을 생성한다.
본 발명은 상기 단위 모션, 상기 위빙, 및 상기 보상 변위 및 상기 보상 회전량 중 적어도 어느 하나에 따라 상기 작업 공간상에서 상기 로봇의 위치 및 회전량을 산출한다.

Description

실시간 위빙 모션 제어 장치 및 그 방법{REALTIME WEAVING MOTION CONTROL DEVICE AND REALTIME WEAVING MOTION CONTROL METHOD}
본 발명은 작업 공간에서 동작하는 로봇이 실시간 위빙 모션을 제어하는 제어 장치 및 그 방법에 관한 것이다.
최근 산업현장에는 로봇에 의해 수행되는 작업의 종류가 다양해지고 있다. 로봇에 의해 수행되는 작업 목표 지점의 위치가 이동되는 경우, 로봇의 모션을 제어하기 위한 제어 시스템이 필요하다.
로봇의 모션 제어를 위한 제어 시스템은 프로그램된 모션 경로를 따라 로봇이 이동하도록 제어한다. 또한, 제어 시스템은 프로그램된 작업 내용에 따라 로봇의 동작을 제어한다.
프로그램된 내용에 따라 로봇을 제어하는 제어 시스템은 로봇의 작업 환경 변화 및 모션 경로의 변경에 의한 실시간 상황 변화가 발생했을 때, 로봇의 모션 및 동작을 적절히 제어할 수 없다.
특허문헌 1 : 한국공개특허 제2005-0069708호 특허문헌 2 : 한국공개특허 제2002-0007142호
본 발명은, 실시간 상황 변화가 발생했을 때, 로봇의 모션 및 동작을 적절히 제어할 수 있는 제어 장치 및 그 방법을 제공하고자 한다.
본 발명의 일 실시예에 따르면, 작업 공간 상에서 로봇의 동작을 제어하기 위한 실시간 위빙 모션 제어 장치에 있어서, 상기 작업 공간 상에서 상기 로봇의 주 이동 경로를 결정하고, 상기 결정된 주 이동 경로를 구성하는 단위 모션을 발생시키고, 단위 모션이 연결된 연속 모션 중 오프셋을 동적으로 변경하는 위빙을 발생시키며, 상기 작업 환경에 따라 결정되는 보상 변위 및 보상 회전량 중 적어도 하나를 생성하는 전처리부; 및 상기 단위 모션과 상기 위빙, 및 보상 변위와 상기 보상 회전량 중 적어도 하나에 따라 상기 작업 공간상에서 상기 로봇의 위치 및 회전량을 산출하는 작업공간 모션 합성부를 포함하는 실시간 위빙 모션 제어 장치가 제공된다.
상기 전처리부는, 상기 로봇의 모션 시작 전에 결정된 주 이동 경로 또는 실시간으로 생성되는 주 이동 경로를 연속모션 방법 선택 정보에 따라 결정하고, 상기 단위 모션을 생성하는 연속 모션 처리부; 상기 로봇의 모션 시작 전에 결정된 위빙 또는 실시간으로 생성되는 위빙을 위빙모션 방법 선택 정보에 따라 선택하고 상대 위빙량을 생성하는 위빙모션 처리부; 및 상기 작업 공간의 상황 변화에 따른 임의의 변위 또는 회전량을 모션에 반영하기 위한 상기 보상 변위 또는 상기 보상 회전량을 생성하는 보상 자세 처리부를 포함할 수 있다.
상기 연속모션 처리부는, 상기 모션 시작 전에 결정된 주 이동 경로가 저장되어 있는 경로 리스트 저장부; 상기 작업 공간의 상황 변화 또는 모션 경로 변경의 사유가 발생한 경우, 실시간으로 새로운 단위 모션을 생성하는 실시간 경로 발생기; 상기 실시간 경로 발생기로부터 생성된 단위 모션을 저장하는 경로 큐; 상기 경로 큐의 단위 모션 및 상기 경로 리스트 저장부의 단위 모션 중 하나를 상기 연속모션 방법 선택 정보에 따라 선택하는 경로 선택기; 및 소정의 작업 시작점과 작업 종료점을 나타내는 연속모션 시작/끝 정보에 따라, 상기 경로 선택기로부터 전달되는 단위 모션을 연속 모션으로 연결하는 작업공간 연속모션 발생기를 포함할 수 있다.
상기 작업공간 연속모션 발생기는, 단위 모션 시작 방법에 따라 연속 모션 중 n+1번째 단위 모션을 시작하고, 이전모션 처리 방법에 따라 n번째 단위 모션을 처리할 수 있다.
상기 단위 모션 시작 방법은, 상기 n번째 단위 모션의 가속 또는 등속에서 감속으로 변화하는 시점에 상기 n+1번째 단위 모션을 시작하는 방법; 상기 n번째 단위 모션의 가속에서 등속 또는 감속으로 변환하는 시점에 상기 n+1번째 단위 모션을 시작하는 방법; 상기 n번째 단위 모션이 정지하기 일정 시간 전 시점에 상기 n+1번째 단위 모션을 시작하는 방법; 및 상기 n번째 단위 모션 및 n-1번째 이전 단위 모션 간의 중첩 모션이 끝나는 시점에 n+1번째 단위 모션을 시작하는 방법 중 하나일 수 있다.
상기 이전모션 처리 방법은, 상기 n번째 단위 모션을 감속하고, 상기 n+1번째 단위 모션을 시작하는 방법; 및 상기 n번째 단위 모션을 그대로 유지하고, 상기 n+1번째 단위 모션을 시작하는 방법 중 하나일 수 있다.
상기 위빙모션 처리부는, 상기 모션 시작 전에 결정된 위빙 리스트가 저장된 위빙 리스트 저장부; 상기 작업 공간의 상황 변화 또는 작업 중 모션 경로 변경 사유가 발생하면, 실시간으로 위빙을 생성하는 실시간 위빙 발생기; 상기 실시간 위빙 발생기로부터 생성된 위빙을 단위 위빙 단위로 저장하는 위빙큐; 상기 위빙모션 방법 선택 정보에 따라 상기 위빙 리스트에 포함된 단위 위빙 또는 상기 위빙큐의 단위 위빙을 선택하는 위빙 선택기; 및 상기 위빙 선택기에 의해 선택된 단위 위빙을 구분하기 위한 위빙 시작/끝 정보, 위빙 샘플링 시간 및 위빙기준변수 정보를 입력받고, 상기 선택된 단위 위빙 및 위빙기준변수 정보를 이용하여 상기 위빙 샘플링 시간 내에 상대 위빙량을 결정하는 작업공간 위빙 모션 발생기를 포함하고, 상기 위빙기준변수 정보는, 현재 단위 위빙 중 다음 단위 위빙이 시행되는 위빙 변경 기점을 설정하기 위한 위빙기준변수를 포함할 수 있다.
상기 작업공간 위빙 모션 발생기는, 상기 위빙기준변수를 상기 연속모션의 시간, 상기 연속모션의 자취길이, 또는 상기 연속모션의 자취회전량을 기준으로 결정할 수 있다.
상기 작업공간 위빙 모션 발생기는, 상기 위빙기준변수를 결정하고, 상기 위빙함수를 반복하는 위빙주기 및 상기 결정된 위빙기준변수를 이용하여 제1 변수를 결정하고, 상기 위빙함수를 상기 제1 변수에 대한 함수로 생성할 수 있다.
상기 작업공간 위빙 모션 발생기는, 상기 위빙기준변수가 상기 위빙 변경기점에 도달하지 않으면, 상기 위빙기준변수 및 상기 제1 변수를 생성할 수 있다.
상기 작업공간 모션합성부, 상기 작업공간 연속모션 발생기, 상기 작업공간 위빙모션 발생기, 및 상기 보상자세 발생기는 상기 위빙샘플링 시간에 동기되어 동작할 수 있다.
상기 작업공간 모션합성부로부터 로봇의 위치 및 회전량을 입력 받아, 상기 위빙 모션을 실현하기 위해 상기 로봇의 조인트의 동작을 생성하는 조인트 공간 변환기를 더 포함하고, 상기 조인트 공간 변환기는, 상기 위빙 샘플링 주기에 동기되어 동작할 수 있다.
본 발명의 다른 일 실시예 에 따르면, 작업 공간 상에서 로봇의 동작을 제어하기 위한 실시간 위빙 모션 제어 방법에 있어서, 상기 작업 공간의 상황 변화 및 작업 중 모션 경로 변경 사유를 포함하는 실시간 변경 사유의 발생 여부에 따라 실시간으로 단위 모션이 생성되고, 상기 로봇의 모션 시작 전에 결정된 단위 모션 또는 상기 실시간으로 생성되는 단위 모션 중 하나를 선택하는 단계; 상기 실시간 변경 사유의 발생 여부에 따라 실시간으로 단위 위빙이 생성되고, 상기 로봇의 모션 시작 전에 결정된 단위 위빙 및 상기 실시간으로 생성되는 단위 위빙 중 하나를 선택하는 단계; 상기 작업 공간의 상황 변화에 따라 결정되는 보상 변위 및 보상 회전량 중 적어도 하나를 생성하는 단계; 및 상기 단위 모션, 상기 단위 위빙, 및 상기 보상 변위와 상기 보상 회전량 중 적어도 하나에 따라 상기 작업 공간상에서 상기 로봇의 위치 및 회전량을 산출하는 단계를 포함하는 실시간 위빙 모션 제어 방법이 제공된다.
상기 선택된 단위 위빙에 따라 상대 위빙량을 결정하는 단계를 더 포함하고, 상기 상대 위빙량을 결정하는 단계는, 상기 선택된 단위 위빙 및 위빙기준변수 정보를 이용하여 위빙 샘플링 시간 내에 상대 위빙량을 결정하는 단계를 포함하고, 상기 위빙기준변수 정보는, 현재 단위 위빙 중 다음 단위 위빙이 시행되는 위빙 변경 기점을 설정하기 위한 위빙기준변수를 포함할 수 있다.
상기 상대 위빙량을 결정하는 단계는, 상기 위빙기준변수를 상기 연속모션의 시간, 상기 연속모션의 자취길이, 또는 상기 연속모션의 자취회전량을 기준으로 결정하는 단계; 및 상기 위빙함수를 반복하는 위빙주기 및 상기 결정된 위빙기준변수를 이용하여 제1 변수를 결정하고, 상기 위빙함수를 상기 제1 변수에 대한 함수로 생성하는 단계를 포함할 수 있다.
본 발명은, 실시간 상황 변화가 발생했을 때, 로봇의 모션 및 동작을 적절히 제어할 수 있는 제어 장치 및 그 방법을 제공한다.
도 1은 본 발명의 일 실시 예에 따른 용접 로봇의 모션을 제어하는 모션 제어 시스템을 나타낸 도면이다.
도 2는 n-1 번째 단위 모션과 n 번째 단위 모션 각각의 시간대 속도를 나타낸 도면이다.
도 3A는 계획된 n 번째 모션의 시간대 속도를 나타낸 도면이다.
도 3B 및 3C 각각은 다른 이전모션 처리 방법에 따를 때, n번째 단위 모션과 n+1 번째 단위 모션 각각의 시간대 속도를 나타낸 도면이다.
도 4는 기준변수가 자취길이 기준에 따를 때 단위 모션과 기준 변수의 관계를 나타낸 그래프이다.
도 5는 작업공간 위빙모션 발생기의 동작을 나타낸 순서도이다.
도 6A는 위빙 함수가 사인 함수이고, 위빙기준변수가 시간 기준인 경우를 나타낸 도면이다.
도 6B는 위빙 함수가 일차 함수이고, 위빙기준변수가 시간 기준인 경우를 나타낸 도면이다.
도 6C는 위빙 함수가 사인 함수이고, 위빙기준변수가 자취길이 기준인 경우를 나타낸 도면이다.
도 6D는 위빙 함수가 일차 함수이고, 위빙기준변수가 자취길이 기준인 경우를 나타낸 도면이다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시 예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였다. 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
이하, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있는 실시 예를 첨부된 도면을 참조로 하여 상세히 설명한다.
도 1은 본 발명의 일 실시 예에 따른 위빙 모션 제어 장치 및 제어 방법이 용접 로봇의 모션을 제어하기 위해 적용된 예를 나타낸 도면이다. 본 발명의 일 실시 예에서는 산업 로봇 중 용접을 수행하는 용접 로봇을 일 예로 들어 설명하고 있다. 그러나 본 발명이 이에 한정되는 것은 아니고, 실시 예에서 설명되는 기술적 사상은 다른 로봇의 모션 제어에 사용될 수 있다.
도 1에 도시된 바와 같이, 모션 제어 시스템(1)은 전처리부(10), 작업공간 모션 합성부(20), 조인트공간변환기(30), 및 서보제어부(40)를 포함한다. 도 1에는, 모션 제어 시스템(1)의 제어 대상인 로봇 기구부(2)가 함께 도시되어 있다.
전처리부(10)는 로봇의 작업 공간상에서 주 이동 경로를 결정하고, 결정된 주 이동 경로에 따른 단위 모션을 발생시키고, 연속 모션 중 오프셋(offset)을 동적으로 변경하는 위빙을 발생시키며, 작업 환경에 따라 결정되는 보상 변위 또는 보상 회전량을 생성한다. 이하, 위빙 모션은 단위 모션과 위빙이 결합된 모션을 포함한다. 연속 모션은 단위 모션의 연결을 의미한다. 보상 변위 또는 보상 회전량은 위빙 모션에 반영된다.
전처리부(10)는 연속 모션 처리부(100), 위빙 모션 처리부(200), 및 보상 자세 처리부(300)를 포함한다.
연속 모션 처리부(100)는 로봇의 작업 공간 상에서 주 이동 경로를 결정하고, 결정된 주 이동 경로로 단위 모션을 발생시킨다. 이 때 주 이동 경로는 모션 시작 전에 결정되거나, 동작 중 실시간으로 생성될 수 있고, 모션 시작 전 결정된 주 이동 경로 및 실시간으로 생성된 주 이동 경로 중 하나를 선택하기 위해 연속모션 방법선택 정보(A1)가 발생된다.
연속모션 처리부(100)는 경로 리스트 저장부(110), 실시간 경로 발생기(120), 경로 큐(130), 경로 선택기(140), 및 작업공간 연속모션 발생기(150)를 포함한다.
연속모션 방법선택 정보(A1)는 로봇의 모션 중 발생 가능한 외부상황 변화 및 작업 중 모션 경로 변경에 따라 생성된다. 즉, 외부상황 변화 및 모션 경로 변경이 발생하면 모션 시작 전에 결정된 주 이동 경로 대신 실시간으로 생성되는 주 이동 경로를 선택하는 연속모션 방법선택 정보(A1)가 발생한다. 그렇지 않은 경우에는 모션 시작 전에 결정된 주 이동 경로를 선택하는 연속모션 방법선택 정보(A1)가 발생한다.
로봇 작업에 있어 발생 가능한 외부 상황 변화의 예를 들면 다음과 같다.
1) 용접에 의한 부재 변형
2) 도장 분사력에 의한 도장 대상물 변화
3) 블라스트 수거를 위한 흡입력에 의한 대상물 변경
작업 중 모션 경로 변경의 사유의 예를 들면 다음과 같다.
1) 사전 계획 시 없었던 외부 대상물이 작업 영역에 침범하였을 경우
2) 다중 로봇 작업에서 사전에 계획되었던 작업을 타 로봇이 대신 처리하는 경우
위와 같은 내용은 일 예시로서 로봇의 사용 용도에 따라 다양한 요구가 발생할 수 있다. 이와 같은 다양한 요구가 발생할 때마다 실시간으로 주 이동 경로를 생성할 필요가 있다.
연속모션 처리부(100)는 작업 공간상에서 결정된 주 이동 경로로 모션을 발생시킨다. 주 이동 경로는 단위 모션의 집합이다. 단위 모션은 순서, 타겟 포즈(pose), 로봇 배치(configuration), 가속도 또는 가속 시간, 감속 또는 감속 시간, 최대속도 또는 등속시간, 각가속도 또는 각가속 시간, 각감속도 또는 각감속 시간, 최대 각속도 또는 등속시간, 단위 모션 시작 방법, 및 이전모션 처리 방법을 포함하는 프로파일로 정의된다.
포즈는 로봇의 위치와 로봇의 회전에 대한 정보를 의미한다. 경로를 구성하는 단위 모션들 간의 선후에 따라 단위 모션의 순서가 결정된다. 단위 모션 각각은 자신의 순서 정보를 포함한다. 목표 포즈는 목표 위치 및 목표 방향을 포함하는 정보이다.
로봇 배치는 로봇의 자세를 의미한다. 로봇은 작업에 따라 적합한 자세로 설정되며, 동일한 포즈에서도 다른 자세일 수 있다. 예를 들어, 용접 로봇의 경우 사람의 팔과 유사한 형태로 자세를 취하게 되는데, 용접 로봇이 동일한 포즈이더라도, 왼팔 또는 오른팔의 자세를 취할 수 있다. 즉, 작업 공간에서 용접 로봇이 같은 위치에서 같은 회전을 하더라도 왼팔의 자세인지 또는 오른팔의 자세인지에 따라 작업 내용이 달라진다.
로봇 배치는 로봇의 축(axis)의 수와 종류에 따라 다르고, 로봇 별로 로봇 배치가 결정될 수 있다.
로봇의 이동 경로는 이동 속도에 따라, 이동 속도가 증가하는 가속 구간, 최대 속도로 유지되는 등속 구간, 및 감소하는 감속 구간으로 구분되어 있을 수 있다. 또한, 로봇의 회전 경로는 각속도에 따라, 각속도가 증가하는 각가속 구간, 최대 각속도로 유지되는 각등속 구간, 및 감소하는 각감속 구간으로 구분되어 있을 수 있다.
가속도 또는 가속 시간은 가속 구간에, 감속 또는 감속 시간은 감속 구간에, 최대속도 또는 등속시간은 등속 구간에, 각가속도 또는 각가속 시간은 각가속 구간에, 각감속도 또는 각감속 시간은 각감속 구간에, 및 최대 각속도 또는 등속시간은 각등속 구간에 대응하는 정보이다.
경로 리스트 저장부(110)는 모션 시작전에 결정된 이동 경로가 저장되어 있다. 이동 경로는 단위 모션의 집합이므로, 결정된 이동 경로를 나타내는 단위 모션의 집합이 경로 리스트 저장부(110)에 저장되어 있다.
실시간 경로 발생기(120)는 외부 상황 변화 또는 작업 중 모션 경로 변경의사유가 발생한 경우 실시간으로 새로운 이동 경로를 생성한다. 즉, 실시간 경로 발생기(120)는 실시간으로 단위 모션을 생성한다.
실시간 경로 발생기(120)는 실시간으로 새로운 이동 경로를 생성하기 위해 다양한 방법을 사용할 수 있다. 예를 들어 비젼 카메라를 통해 포즈가 선정(단위 모션 생성)되는 방법에 따르면, 비젼 카메라에 의해 비젼 처리된 결과를 바탕으로 경로의 목표 포즈가 달라질 수 있다. 이렇게 생성된 경로에 위빙이 연동될 수 있도록 위빙 모션 처리부가 위빙 모션을 제어한다.
비젼 처리에 소요되는 시간들을 포함한 경로 생성 시간은 비확정적이므로, 로봇의 모션이 멈출 수 있다. 이를 방지하기 위해서, 버퍼 수단이 필요하고, 본 발명의 실시 예에서는 버퍼 수단으로 '경로 큐'를 사용한다. 구체적으로, 실시간경로발생기(120)의 단위 모션 생성이 지연되어 모션이 정지되는 것을 방지하기 위해 경로 큐(130)에 단위 모션을 저장시킬 수 있다.
경로 큐(130)는 단위 모션 저장을 위한 저장 공간을 포함하고, 저장 공간은 단위 모션 단위로 나누어져 있는 메모리로 구현될 수 있다. 실시간 경로 발생기(120)의 단위 모션 생성에 소요되는 시간에 따라 경로 큐(130)의 크기를 적절히 설정할 수 있다.
구체적으로, 연속모션 시작/끝 정보(B1)가 단위 모션의 시작을 알리는 경우, 경로 큐(130)는 해당 단위 모션을 경로 선택기(140)에 전달한다. 그리고 연속모션 시작/끝 정보(B1)가 단위 모션의 끝을 알리는 경우, 경로 큐(130)는 해당 단위 모션을 메모리에서 삭제한다.
경로 선택기(140)는 연속모션 방법선택 정보(A1)에 따라 경로 리스트 저장부(110)의 단위 모션 또는 경로 큐(130)로부터 전달되는 단위 모션 중 하나를 선택한다.
작업공간 연속모션 발생기(150)는 연속모션 시작/끝 정보(B1) 및 경로 선택기(140)로부터 전달되는 단위 경로를 입력받고, 소정의 작업 시작점과 작업 종료점 사이의 작업 경로상에서 작업을 수행하는 로봇의 모션 제어의 실시간 응답을 위한 궤적을 발생시켜 타겟 포즈를 결정한다. 타켓 포즈는 타겟 위치를 나타내는 위치 백터(T_p(t))와 타겟 회전량을 나타내는 회전 백터(T_r(t))의 행렬로 표시될 수 있다.
연속모션 시작/끝 정보(B1)는 소정의 작업 시작점과 작업 종료점에 대한 정보를 포함한다. 즉, 연속모션 시작/끝 정보(B1)는 복수의 단위 모션 중 하나의 단위 모션을 구분하기 위한 정보이다. 모션 제어 시스템(1)은 여러 가지의 단위 모션을 제어한다. 예를 들어, P2P(POSE to POSE: 시작 포즈에서 끝 포즈로 로봇을 이동시키고, 그 사이 경로는 로봇의 각 조인트 별 최적화된 형태를 결정하여 로봇을 이동시키는 방식), 또는 JOG (축별 속도 또는 자세 속도에 대한 지령으로 로봇을 움직이게 하는 방식) 방식에 따르는 여러 단위 모션 중 현재 모션 제어 시스템(1)에 의해 제어되는 단위 모션의 시작과 끝을 나타내는 정보이다. 작업공간 연속모션 발생기(150)는 연속모션 시작/끝 정보(B1)에 따라 현재 생성하고 있는 연속모션과 다른 단위 모션의 연속 모션을 구분한다.
작업공간 연속모션 발생기(150)는 단위 모션 시작 방법에 따라 연속 모션 중 각 단위 모션을 시작한다. 단위 모션 시작 방법은 연속하는 단위 모션 중 후순의 단위 모션의 시작 시점을 결정하는 방법을 의미한다.
도 2를 참조하여 단위 모션 시작 방법에 대해 설명한다.
도 2는 n-1 번째 단위 모션과 n 번째 단위 모션 각각의 시간대 속도를 나타낸 도면이다. 도 2를 참조하여, n+1 번째 단위 모션 시작 방법에 대해서 설명한다.
n+1번째 단위 모션을 시작하는 방법은 아래와 같이 4 가지 경우 중 하나일 수 있다.
1) 이전 단위 모션(n 번째 단위 모션)의 가속에서 등속 또는 감속으로 변환하는 시점 t1
2) 이전 단위 모션(n 번째 단위 모션) 및 그 이전 단위 모션(n-1 번째 단위 모션) 간의 중첩 모션이 끝나는 시점 t2
3) 이전 단위 모션(n 번째 단위 모션)이 정지하기 일정 시간(t_b) 전 시점 t3
4) 이전 단위 모션(n 번째 단위 모션)의 가속 또는 등속에서 감속으로 변화하는 시점 t4
시점 t1 내지 시점 t4 중 어느 한 시점에 다음 단위 모션 n+1 번째 단위 모션이 시작될 수 있다. 또한, 기간 t2-t4, 기간 t4-t3, 및 기간 t3-t1 사이의 임의의 시점에 n+1 번째 단위 모션이 시작될 수 있다.
작업공간 연속모션 발생기(150)는 이전모션 처리 방법에 따라 연속 모션 중 이전 단위 모션을 처리한다. 이전모션 처리 방법은, 새롭게 시작되는 단위 모션의 이전 단위 모션을 처리하는 방법을 의미한다.
이하, 도 3A-3C를 참조하여 이전모션 처리 방법에 대해서 설명한다.
도 3A는 계획된 n 번째 모션의 시간대 속도를 나타낸 도면이다.
도 3B 및 3C 각각은 다른 이전모션 처리 방법에 따를 때, n번째 단위 모션과 n+1 번째 단위 모션 각각의 시간대 속도를 나타낸 도면이다.
도 3B 및 3C에 도시된 바와 같이, 이전모션 처리 방법은 다음과 같을 수 있다.
1) 이전 모션(n번째 단위 모션)을 감속하고, 다음 모션(n+1 번째 단위 모션)을 시작하는 방법
2) 이전 모션(n번째 단위 모션)을 그대로 유지하고, 다음 모션(n+1 번째 단위 모션)을 시작하는 방법
도 3B 및 3C에 도시된 이전모션 처리 방법은, 다음 단위 모션이 "1) 이전 단위 모션(n 번째 단위 모션)의 가속 또는 등속에서 감속으로 변화하는 시점 t4"에 따르는 것으로 가정하여 설명한다. 본 발명이 이에 한정되는 것은 아니고 일 실시 예에서 이전모션 처리 방법을 설명하기 위한 설정이다.
이전모션 처리방법 1)에 따르면, 계획된 n 번째 단위 모션은 다음 단위 모션(n+1 번째 단위 모션)이 시작하는 시점 t4에 점선으로 도시한 바와 같이 아직 종료되지 않았으나, 시점 t4부터 감속시켜 종료시킨다.
이와 달리, 이전모션 처리 방법 2)에 따르면, 계획된 n 번째 단위 모션은 그대로 유지되고, 시점 t4에 다음 n+1 번째 단위 모션이 시작되어 두 모션이 중첩된다.
위에서 언급한 다음 단위 모션 처리 방법들 중 시점 t4 이외의 다른 시점에서도 동일한 원리로 이전모션 처리 방법이 적용된다.
작업공간 연속모션 발생기(150)는 단위 모션의 시작 시점에 로봇의 초기 속도가 "0"인 경우 로봇의 이동 속도에 따라 가속, 등속 및 감속의 세 구간으로 나눈다.
작업공간 연속모션 발생기(150)는 설정된 세 구간 각각에 대한 속도 프로파일을 생성한다. 구체적으로, 작업공간 연속모션 발생기(150)는 가속구간 및 감속구간의 속도 프로파일을 소정 차수의 다항식으로 생성하고, 등속구간에서의 속도 프로파일을 상수 값을 가지는 속도 프로파일을 생성한다.
작업공간 연속모션 발생기(150)는 단위 모션의 시작 시점에 로봇의 초기 속도가 "0"이 아닌 경우 브랜딩(blending), 등속 및 감속의 세 구간으로 나누어 구간을 설정한다. 브랜딩 구간이란 초기 속도가 0이 아니므로 이전 단위 모션과 현재 단위 모션이 결합되는 구간을 의미한다.
작업공간 연속모션 발생기(150)는 이전 단위 모션과 현재 단위 모션 각각의 포즈에 포함된 위치 정보들을 더하고, 각각의 포즈에 포함된 회전 정보 행렬들을 곱하여 이전 단위 모션과 현재 단위 모션을 결합한다. 그러면 브랜딩 기간 동안 이동해야 하는 최종 위치가 결정된다.
작업공간 연속모션 발생기(150)는 브랜딩 구간에서 초기 속도에서 속도를 "0"으로 만드는 속도 프로파일과 최종위치로의 이동을 위한 가속구간 속도 프로파일을 브랜딩한다. 브랜딩 구간에서 이동해야 하는 거리에서 초기 속도에서 속도를 0으로 만드는 기간 동안 이동한 거리의 차이를 주어진 브랜딩 구간 동안 이동하기 위한 속도 프로파일을 합하여 브랜딩 구간 속도 프로파일을 생성한다.
초기 속도가 '0'이 아닌 경우의 감속 구간에서, 작업공간 연속모션 발생기(150)는 소정 차수의 다항식으로 속도 프로파일을 생성할 수 있다. 이 때, 다항식 차수는 앞서 설명한 초기 속도가 0일 때 감속 구간에서의 속도 프로파일 차수보다 높다. 초기 속도가 '0'이 아닌 경우의 등속 구간에서, 작업공간 연속모션 발생기(150)는 등속도의 속도 프로파일을 생성한다.
작업공간 연속모션 발생기(150)는 이렇게 생성된 속도 프로파일에 따라 궤적을 발생시켜 타겟 위치를 나타내는 위치 백터(T_p(t))와 타겟 회전량을 나타내는 회전 백터(T_r(t))의 행렬을 포함하는 타겟 포즈를 생성한다. 작업공간 연속모션 발생기(150)는 생성된 타겟 포즈를 작업공간 모션 합성부(20)로 전달한다.
위빙모션 처리부(200)는 연속 모션 중 오프셋을 동적으로 변경하는 모션 즉,위빙을 생성한다. 위빙모션 처리부(200)는 오프셋을 동적으로 변화시키는 방법으로, 사전에 계획된 위빙 리스트 또는 실시간 위빙 발생기를 이용한다.
위빙모션 처리부(200)는 작업 공간상에서 결정된 위빙 리스트에 따라 위빙 모션을 발생시킨다. 앞서 실시간 경로 발생기의 설명에서 언급한 바와 같이, 외부 상황 변화 또는 모션 경로 변경의 사유가 발생한 경우, 위빙모션 처리부(200)는 사전에 계획된 위빙 리스트를 그대로 사용할 수 없다. 이 경우, 위빙모션 처리부(200)는 실시간 위빙 발생기로부터 생성되는 위빙 리스트에 따라 상대 위빙량을 생성한다.
즉, 위빙모션 처리부(200)는 상황에 따라 상대 위빙량을 생성하기 위해서, 실시간 위빙 리스트를 생성하거나, 저장된 위빙 리스트를 선택적으로 이용할 수 있다.
위빙모션 처리부(200)는 위빙 리스트 저장부(210), 실시간 위빙 발생기(220), 위빙 큐(230), 위빙 선택기(240), 및 작업 공간 위빙 모션 발생기(250)를 포함한다.
위빙 리스트 저장부(210)는 모션 시작 전에 결정된 위빙의 리스트를 저장한다.
위빙모션 방법선택 정보(A2)는 로봇의 모션 중 발생 가능한 외부상황 변화 및 작업 중 모션 경로 변경 사유의 발생 여부에 따라 생성된다. 즉, 외부상황 변화 및 모션 경로 변경 사유 중 하나가 발생하면 모션 시작 전에 결정된 주 위빙 대신 실시간으로 생성되는 위빙을 선택하는 위빙모션 방법선택 정보(A2)가 발생한다. 그렇지 않은 경우에는 모션 시작 전에 결정된 위빙을 선택하는 연속모션 방법선택 정보(A2)가 발생한다.
실시간 위빙 발생기(220)는 외부 상황 변화 또는 작업 중 모션 경로 변경의사유가 발생한 경우 실시간으로 새로운 위빙을 생성한다. 즉, 실시간 위빙 발생기(220)는 실시간으로 단위 위빙을 생성한다. 실시간 위빙 발생기(220)는 실시간으로 새로운 위빙을 생성하기 위해 다양한 방법을 사용할 수 있다.
위빙큐(230)는 단위 위빙 저장을 위한 저장 공간을 포함하고, 저장 공간은 단위 위빙 단위로 나누어져 있는 메모리로 구현될 수 있다. 실시간 위빙 발생기(220)의 단위 위빙 생성에 소요되는 시간에 따라 위빙 큐(230)의 크기를 적절히 설정할 수 있다. 위빙 큐(130)는 위빙 시작/끝 정보(B2)에 따라 저장된 단위 위빙을 전달 및 삭제한다.
구체적으로, 위빙 시작/끝 정보(B2)가 단위 위빙의 시작을 알리는 경우, 위빙 큐(230)는 해당 단위 위빙을 위빙 선택기(240)에 전달한다. 그리고 위빙 시작/끝 정보(B2)가 단위 위빙의 끝을 알리는 경우, 위빙 큐(230)는 해당 단위 위빙을 메모리에서 삭제한다.
위빙 선택기(240)는 위빙모션 방법선택 정보(B2)에 따라 위빙 리스트 저장부(110)로부터 전달되는 단위 위빙 또는 위빙 큐(230)로부터 전달되는 단위 위빙 중 하나를 선택한다.
작업공간 위빙모션 발생기(250)는 위빙모션 시작/끝 정보(B2) 및 위빙 선택기(240)로부터 전달되는 단위 위빙을 입력받고, 단위 위빙에 따라 연속 모션 중 상대 위빙량을 결정한다. 상대 위빙량은 위치 백터(W_p(t))와 회전 백터(W_r(t))의 행렬로 표시될 수 있다.
위빙 시작/끝 정보(B2)는 작업공간 위빙모션 발생기(250) 및 위빙큐(230)에 전달된다. 위빙큐(230)는 위빙 시작/끝 정보가 위빙 끝을 알려주면, 위빙 큐를 비운다. 위빙 시작/끝 정보(B2)는 연속모션 시작/끝 정보(B1)와 함께 복수의 위빙 모션 중 하나의 위빙 모션을 구분하기 위한 정보이다. 작업공간 위빙모션 발생기(250)는 위빙모션 시작/끝 정보(B2)에 따라 현재 생성하고 연속 모션의 위빙과 다른 연속 모션의 위빙을 구분한다.
앞서 설명한 바와 같이, 경로 큐(130) 및 위빙 큐(230) 각각은 연속모션 시작/끝 정보(B1) 및 위빙 시작/끝 정보(B2)에 따라 큐를 비운다. 즉, 다음에 시작되는 위빙 모션과 현재 생성되는 위빙 모션이 섞이지 않도록, 현재 위빙 모션에 대한 데이터는 삭제된다. 이는 위빙 모션 생성에 있어서 발생할 수 있는 오동작을 방지한다.
앞서 언급한 위빙 리스트는 단위 위빙의 집합이다. 단위 위빙은 방향선택, 기준벡터, 위빙변경기점, 최대위빙 포즈(pose), 위빙주기, 및 위빙함수에 의해 정의된다.
단위 위빙의 방향 선택은 이동방향벡터와 기준벡터에 의해 결정된다. 단위 위빙의 방향을 나타내는 벡터를 위빙방향벡터(Wd)라 한다. Wd는 xyz 좌표축에 따라 (Wd_x, Wd_y, Wd_z)로 구성된다.
위빙모션 처리부(200)는 상대 위빙량을 결정하기 위한 위빙방향벡터(Wd)를 설정한다. 위빙방향벡터(W)를 설정하는 방법은 다양할 수 있다.
예를 들어, 1) 이동 방향 벡터(D)와 기준 벡터(N)에 직각을 이루는 방향으로 위빙방향벡터(W)를 결정하는 방법 및 2) 작업 공간 기준의 임의의 벡터로 위빙 방향 벡터(W)를 결정하는 방법 중 하나에 따를 수 있다.
1)의 방법에서, 이동방향 벡터(D)는 연속모션 처리부(100)에서 선택된 경로를 나타내는 벡터이고, 기준 벡터(N)는 이동방향 벡터(D)와 동일 평면상에서 수직인 벡터이다. 이때, 이동 방향 벡터(D)는 (D_x, D_y, D_z)이고, 기준 벡터(N)는 (N_x, N_y, N_z)로 나타내진다.
2)의 방법의 경우, 이동 방향 벡터(D)는 (1,0,0)이고, 기준 벡터(N)는 (0,1,0)이며 위빙 방향 벡터(W)는 (0,0,1)로 결정될 수 있다.
위빙 변경기점은 현재 진행중인 단위 위빙의 다음 단위 위빙이 시행되는 기점을 나타낸다. 실시간으로 단위 위빙이 발생되는 경우에 위빙 큐의 크기가 0이면 임의로 원하는 기점에서 위빙 변경이 가능하므로 단위 위빙 내의 위빙 변경 기점은 무시된다.
그러나 실시간으로 단위 위빙이 발생되는 경우에 위빙 큐의 크기가 0이 아닌 경우, 원하는 기점에 위빙 변경이 불가능하므로, 위빙 큐의 크기에 따라 현재 진행중인 단위 위빙 중 다음 단위 위빙이 시행되는 기점이 설정되어야 한다. 즉, 위빙 큐가 존재하는 경우(큐 크기가 0이 아닌 경우)는 다음 단위 위빙이 반영 되어야 할 시점 (위빙 변경 기점)에 대한 시간 정보를 가지고 있어야 한다. 만약 이 정보가 없다면 위빙 큐에 저장된 위빙 정보가 동시에 모두 시행되게 된다.
위빙 변경기점은 연속모션의 단위 모션과 동기되도록 설정되어야 한다. 또는, 위빙 변경기점을 설정하기 위한 위빙기준변수 's'의 일정 기점 's_d'를 위빙 변경기점으로 설정할 수 있다.
s의 일정 기점 s_d를 위빙 변경기점으로 설정한 경우, 다음 단위 위빙이 시작되는 시점은 s > s_d 를 처음 만족하는 기점이다.
위빙기준변수는 시간 기준, 자취길이기준, 또는 자취회전량 기준으로 설정될 수 있다. 위빙기준변수가 시간 기준인 경우, 위빙기준변수는 s(t)가 된다.
위빙기준변수가 자취길이 기준인 경우, 모션을 직선 단위 모션의 집합으로 보았을 때, 움직인 길이(d)를 위빙기준변수로 설정한다. 그러면 위빙기준변수는 s(d)가 된다.
만약 연속모션이 등속일 경우에는 시간 기준의 위빙기준변수에 따른 작업 공간상의 결과와 자취 길이 기준의 위빙기준변수에 따른 작업 공간상의 결과가 동일하다. 연속모션이 등속이 아닐 경우에는 자취길이 기준의 위빙기준변수에 따른 작업 공간상의 결과는 시간 기준의 위빙기준변수에 따른 작업 공간상의 결과와 다르다.
도 4는 위빙기준변수가 자취길이 기준에 따를 때 단위 모션과 위빙기준변수의 관계를 나타낸 그래프이다.
도 4에 도시된 연속된 단위 모션 d(1), d(2) 및 d(3)들이 합산되어 위빙기준변수 's(d)'가 생성된다.
위빙기준변수가 자취회전량 기준인 경우, 모션을 회전 단위 모션의 집합으로 보았을 때, 움직인 회전량(r)을 위빙기준변수로 설정한다. 앞서 도 4에 도시된 자취길이 기준에 따른 위빙기준변수 생성 방식과 동일하다. 즉, 회전 단위 모션들이 합산되어 위빙기준변수 's(r)'가 생성된다.
최대위빙 포즈(P_max)는 위빙 방향벡터에 따른 상대적인 포즈를 결정한다. 상대적인 포즈는 위빙 방향벡터로 얼마의 크기 및 어느 방향으로 위빙이 진행되는지를 나타낸다. 즉, 최대위빙 포즈(P_max) 및 위빙 방향벡터(W)에 따라 위빙의 방향 및 크기가 결정된다. 최대위빙 포즈(P_max)는 (P_x, P_y, P_z, P_roll, P_pitch, P_yaw)로 정의된다. 예를 들어, 최대위빙 포즈(P_max)는 균질 변환(Homogeneous Transform) 행렬의 곱의 형태로 산출된다. 균질 변환 행렬은 위치와 회전에 대한 정보를 모두 포함한다. 이 때, P_x, P_y, P_z 는 xyz좌표축에서의 위치이고, P_roll, P_pitch, P_yaw 는 xyz 좌표축의 회전 정도를 나타내는 정보이다.
위빙 함수(f(k))는 최대 위빙 포즈(P_max)를 어떠한 모션으로 발생 시킬지 결정하는 함수이다. 즉, 최대위빙 포즈(P_max)가 발생되는 모션 형상을 결정하는 함수이다. 위빙함수(f(k))는 주기 및 최대값이 1인 주기 함수로 선정될 수 있다[max(f(k))=1].
위빙의 크기는 최대 위빙 포즈(P_max)에 반영되어 있으므로, 위빙함수(f(k))의 최대 크기는 1로 설정하고, 위빙함수(f(k))의 주기가 1이 되도록 위빙함수(f(k))를 설정한다.
예를 들어, 위빙 함수(f(k))를 sin(k/2pi), cos(k/pi) 등과 같은 삼각함수로 설정하거나, 최대 크기가 1이고 주기가 1인 사각 펄스 또는 삼각펄스를 설정할 수 있다. 이 때, 위빙 함수(f(k))가 삼각함수인 경우는 연속적인 위빙 함수이며, 사각펄스 또는 삼각펄스인 경우는 비연속 위빙 함수이다.
연속적인 위빙함수(f(k))는 시간에 대한 미분 값(d(f(k))/dt)이 0이 아니고, 시점과 종점은 동일하다[f(0)=f(1)].
위빙주기(sp)는 위빙함수가 반복되는 시간을 나타내고, 위빙기준변수(s(t))와 변수(k) 사이에는 수학식 1과 같은 관계가 있다.
Figure 112011086362405-pat00001
여기서 mod 연산은 시간에 따른 위빙기준변수(s(t))를 위빙주기(sp)로 나눈 나머지를 의미한다. 즉, 시간에 따른 위빙기준변수(s(t))를 위빙주기로(sp)로 나눈 나머지가 변수(k)이다.
위빙모션 처리부(200)는 위빙샘플링시간(ts)을 주기로 동작한다. 따라서 위빙모션 처리부(200)는 위빙샘플링시간(ts) 내에 위빙량을 계산해야 한다. 위빙샘플링시간(ts) 및 위빙기준변수(s) 설정 방법을 알려주는 위빙기준변수 정보(SI)는 작업공간 위빙모션 발생기(250)로 전달된다.
작업공간 위빙모션 발생기(250)는 위빙기준변수 정보(SI)에 따라 위빙기준변수(s)를 결정하고, 위빙기준변수(s)가 결정되면 변수(k)를 결정하며, 단위 위빙, 위빙기준변수(s)에 따라 상대 위빙량을 생성한다. 이 때, 작업공간 위빙모션 발생기(250)는 위빙샘플링 시간(ts)마다 일정한 순서에 따라 동작하여 상대 위빙량을 결정한다. 위빙기준변수(s)가 시간 기준인 경우 상대 위빙량은 W_p(t) 벡터와 W_r(t) 행렬이다.
위빙기준변수 정보(SI)는 위빙기준변수(s)가 시간 기준의 변수인지, 자취길이 기준의 변수인지 또는 자취회전량 기준의 변수인지에 대한 정보를 포함한다. 따라서 위빙모션 발생기(250)는 위빙기준변수 정보(SI)에 따라 위빙기준변수(s)를 결정하고, 변수(k)를 결정한다. 위빙기준변수 정보(SI)가 시간 기준의 기준 변수인 경우, 수학식 1에 따라 변수(k(t))가 결정된다. 위빙모션 발생기(250)에는 위빙기준변수(s)에 따라 변수(k)를 설정하는 방법이 미리 설정되어 있다.
만약 위빙기준변수 정보(SI)가 위빙기준변수(s)를 자취길이 기준 또는 자취회전량 기준의 변수로 지시한다면, 작업공간 위빙모션 발생기(250)는 위빙샘플링 시간(ts)마다, 자취길이 또는 자취회전량을 생성한다. 작업공간 연속모션 발생기(150)로부터 단위 모션을 전달받고, 단위 모션을 합산하여 자취길이 또는 자취회전량을 생성할 수 있다.
예를 들면, 앞서 도 4를 참조하여 설명한 자취길이를 합산하는 방법을 이용하여 작업공간 위빙모션 발생기(250)는 작업공간 연속모션 발생기(150)로부터 단위 위빙(d(1), d(2),…)들을 전달받고, 이를 합산하여 위빙기준변수(s(d))를 생성할수 있다.
또한, 작업공간 위빙모션 발생기(250)는 작업공간 연속모션 발생기(150)로부터 단위 위빙의 회전량(r(1), r(2),…)을 합산하여 위빙기준변수(s(r))를 생성할 수 있다.
도 5는 위빙기준변수가 시간 기준인 경우 작업공간 위빙모션 발생기의 동작을 나타낸 순서도이다. 아래 설명하는 동작은 위빙기준변수가 자취길이 및 자취회전량 기준일 때도 동일하게 적용된다. 변수가 시간에서 자취길이 및 자취회전량으로 변경될 뿐이다.
도 5에 도시된 바와 같이, 먼저 작업공간 위빙모션 발생기(250)는 위빙기준변수(s(t)) 및 변수(k(t))를 생성한다(S100). 위빙기준변수(s(t))가 시간 기준인 것으로 설명한다. 그러나 본 발명이 이에 한정되는 것은 아니다.
작업공간 위빙모션 발생기(250)는 기준변수(s(t))가 위빙변경기점(sd)과 같은지 판단한다(S110).
판단결과 위빙기준변수(s(t))가 위빙변경기점과 동일한 경우, 작업공간 위빙모션 발생기(250)는 다음 단위 위빙을 선택하고, 위빙기준변수(s(t))를 초기화 한다(S120).[s(t)=0]
판단결과 위빙기준변수(s(t))가 위빙변경기점과 다른 경우, 작업공간 위빙 모션 발생기(250)는 위빙기준변수(s(t)) 및 변수(k(t))를 생성하는 단계 S100을 반복한다.
작업공간 위빙모션 발생기(250)는 현재 단위 위빙의 위빙량을 계산한다(S130). 위빙량(P_r(t))은 수학식 2와 같이 최대위빙 포즈(P_max)와 위빙함수(f(k))의 곱으로 나타낸다. 두 인자의 곱은 로봇의 위치 및 회전을 나타내고, 로봇의 위치는 xyz 좌표축에서의 좌표로, 로봇의 회전은 xyz 좌표축의 회전으로 나타낼 수 있다.
최대위빙 포즈(P_max)와 위빙함수(f(k))의 곱은 최대위빙 포즈(P_max)의 구성성분에 대응하는 위빙함수(f(k))의 성분을 대입하는 것을 의미한다.
Figure 112011086362405-pat00002
이 때, 위치를 나타내는 위빙량을 위치 위빙량(P_r_p(t))이라 하고, 회전을 나타내는 위빙량을 회전 위빙량(P_r_r(t))라고 한다.
수학식 2에서 생성된 위빙량 중 위치 위빙량(P_r_p(t))은 (P_r_x(t), P_r_y(t), P_r_z(t))이고, 회전 위빙량(P_r_r(t))은 (P_r_roll(t), P_r_pitch(t), P_r_yaw(t))이다.
작업공간 위빙모션 발생기(250)는 위빙 방향을 계산한다(S140). 위빙 방향은 위빙 벡터(Rw(t))로서 나타내어진다. 작업공간 위빙모션 발생기(250)는 앞서 언급한 바와 같이, 이동방향 벡터(D)와 기준벡터(N)의 외적을 계산하여 위빙 방향 벡터(Rw(t))를 계산한다.
작업공간 위빙모션 발생기(250)는 위빙방향과 위빙량의 곱으로 상대 위빙량을 계산한다(S140). 상대 위빙량은 상대 위빙량 벡터(W_p(t), W_r(t))로 나타낸다. 상대 위빙량 벡터 중 위치 상대 위빙량 벡터(W_p(t))는 수학식 3과 같이, 위빙 방향 벡터(Rw(t))에 위치 위빙량(P_r_p(t))을 곱한 값이다. 상대 위빙량 벡터 중 회전 상대 위빙량 벡터(W_r(t))는 수학식 4와 같이, 위빙 방향 벡터(Rw(t))에 회전 위빙량(P_r_r(t))을 곱한 값이다.
Figure 112011086362405-pat00003
Figure 112011086362405-pat00004
이와 같은 방식으로 작업공간 위빙모션 발생기(250)는 상대 위빙량을 계산한다. 작업공간 위빙모션 발생기(250)는 위빙 시작/끝 정보(B2)에 따라 현재 생성하고 있는 위빙 모션의 위빙과 다른 위빙 모션의 위빙을 구분한다.
보상 자세 처리부(300)는 외부 상황 변화에 따른 임의의 변위 또는 회전량을 모션에 반영한다. 외부상황의 변화에 따른 변위 또는 회전량의 산출은 다양한 방법으로 산출될 수 있다. 본 발명의 실시 예에서는 미리 설정된 소정의 방법에 따라 외부 상황 변환에 따른 임의의 변위 또는 회전량을 산출한다.
보상 자세 처리부(300)는 외부상황을 입력받는 보상자세 발생기(310)를 포함한다. 보상자세 발생기(310)는 외부상황을 감지하고, 외부상황에 변화가 발생하면 이를 보상하기 위한 변위 또는 회전량을 기설정된 방법에 따라 산출한다.
보상 자세 처리부(300)는 외부상황에 따른 임의의 보상 자세값에 따라 결정되는 보상 변위(M_p(t)) 및 보상 회전량(M_r(t))을 생성한다.
작업공간 모션합성부(20)는 작업공간 연속모션 발생기(150), 작업공간 위빙모션 발생기(250), 및 보상자세 발생기(310) 각각의 출력을 입력 받아 작업 공간 상에서 로봇의 위치 및 회전량을 산출한다.
작업공간 모션합성부(20), 작업공간 연속모션 발생기(150), 작업공간 위빙모션 발생기(250), 보상자세 발생기(310), 및 조인트 공간 변환기(30)는 동일한 작업공간 샘플링 주기로 동기화 되어 있다. 작업공간 샘플링 주기는 위빙 샘플링 주기(ts)와 동기화 되어 있다.
작업공간 모션합성부(20)는 입력을 바탕으로 작업공간상의 위치(TS_p(t)), 및작업공간산의 회전량(TS_r(t))를 아래 수학식 5 및 6와 같이 산출한다.
Figure 112011086362405-pat00005
Figure 112011086362405-pat00006
수학식 5 및 6과 같이, 작업공간 모션합성기(20)는 매 작업공간 샘플링 주기마다 시행하여 실시간으로 위빙 발생 및 보상자세 값 반영이 가능하다.
조인트 공간 변환기(30)는 작업공간 모션합성부(20)로부터 작업 공간 상의 위치 및 회전량을 입력받아, 작업공간에서 생성된 위빙 모션을 실현하기 위해 로봇의 조인트에서 수행되어야 하는 동작을 생성한다. 즉, 작업 공간의 위빙 모션을 조인트 공간의 모션으로 변환한다. 구체적인 방법으로 역기구학(Inverse Kinematics)이 조인트 공간 변환기(30)에 적용될 수 있다.
서보제어부(40)는 임피던스 제어, 위치제어, 속도제어, 및 토크제어 등과 같이 로봇의 조인트 단위의 제어를 수행하는 구성이다.
도 6A-6D 각각은 본 발명의 실시 예에 따른 모션 제어 시스템이 적용되어 생성되는 위빙 모션을 도시한 것이다.
도 6A는 위빙 함수가 사인 함수이고, 위빙기준변수가 시간 기준인 경우를 나타낸 도면이다.
도 6A에서 시점(ST1)으로부터 종점(EN1)까지 가는 연속 모션 경로는 1점 쇄선으로 도시되어 있다. 또한 연속 모션에 위빙이 더해진 작업공간에서의 위빙 모션은 실선으로 도시되어 있다. 도 6A의 위빙함수(f(k))는 sin(k/2pi)이다.
도 6A에서 시점(ST1)과 경유점(TH1) 사이의 구간(PE1)에서의 속도(V1)가 경유점(TH1)과 종점(EN1) 사이의 구간(PE2)에서의 속도(V2)보다 빠르다.
위빙함수(f(k))는 시간 기준의 위빙기준변수(s(t))에 따르므로, 도 6A에 도시된 바와 같이, 구간(PE2)에 포함되는 위빙 주기가 구간(PE1)의 위빙 주기보다 더 많다. 속도(V1)이 속도(V2)보다 빠르므로, 동일 거리를 이동하는데 소요되는 시간이 더 짧다. 위빙기준변수(s(t))는 시간 기준이므로, 시간이 짧을수록 해당 시간내에 포함되는 위빙 주기는 감소한다.
도 6B는 위빙 함수가 일차 함수이고, 위빙기준변수가 시간 기준인 경우를 나타낸 도면이다. 도 6B는 도 6A와 마찬가지로 연속 모션 경로는 일점쇄선으로, 작업공간에서 위빙 모션은 실선으로 표시되어 있다. 도 6A의 위빙함수(f(k))는 k이다.
도 6B에서 시점(ST2)과 경유점(TH2) 사이의 구간(PE2)에서의 속도(V3)가 경유점(TH2)과 종점(EN2) 사이의 구간(PE2)에서의 속도(V4)보다 빠르다. 따라서 구간(PE4)에 포함되는 위빙 주기가 구간(PE3)의 위빙 주기보다 더 많다.
도 6C는 위빙 함수가 사인 함수이고, 위빙기준변수가 자취길이 기준인 경우를 나타낸 도면이다. 도 6C는 도 6A와 마찬가지로 연속 모션 경로는 일점쇄선으로, 작업공간에서 위빙 모션은 실선으로 표시되어 있다. 도 6C의 위빙함수(f(k))는 sin(k/2pi)이다.
도 6C에 도시된 바와 같이, 위빙기준변수(s)가 자취길이기준인 경우, 속도(V5) 및 속도(V6)에 관계없이, 구간(PE5) 및 구간(PE6)에 포함되는 위빙 주기의 개수는 연속 모션 이동 경로 길이에 따라 결정된다.
따라서 구간(PE5) 및 구간(PE6)의 길이가 동일한 경우, 각 구간에 포함되는 위빙 주기 개수는 동일하다. 다만, 작업 로봇이 작업 구간(PE5)을 통과하는 시간과 작업 구간(PE6)을 통과하는 시간 사이에는 속도에 따라 차이가 있다.
도 6D는 위빙 함수가 일차 함수이고, 위빙기준변수가 자취길이 기준인 경우를 나타낸 도면이다. 도 6D는 도 6A와 마찬가지로 연속 모션 경로는 일점쇄선으로, 작업공간에서 위빙 모션은 실선으로 표시되어 있다. 도 6D의 위빙함수(f(k))는 k이다.
도 6D에 도시된 바와 같이, 위빙기준변수(s)가 자취길이기준인 경우, 속도(V7) 및 속도(V8)에 관계없이, 작업 구간(PE7) 및 작업 구간(PE8) 각각에 포함되는 위빙 주기의 개수는 연속 모션 이동 경로의 길이에 따라 결정된다.
이와 같이, 실시간으로 위빙 모션을 제어할 수 있는 본 발명의 실시 예에 따르면 외부 작업 환경의 변화에 실시간으로 대응할 수 있다.
지금까지 참조한 도면과 기재된 발명의 상세한 설명은 단지 본 발명의 예시적인 것으로서, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
1 : 모션 제어 시스템 2 : 로봇 기구부
10 : 전처리부 20 : 작업공간 모션 합성부
30 : 조인트공간변환기 40 : 서보제어부
100 : 연속 모션 처리부 110 : 경로 리스트 저장부
120 : 실시간 경로 발생기 130 : 경로 큐
140 : 경로 선택기 150 : 작업공간 연속모션 발생기
200 : 위빙 모션 처리부 210 : 위빙 리스트 저장부
220 : 실시간 위빙 발생기 230 : 위빙 큐
240 : 위빙 선택기 250 : 작업 공간 위빙 모션 발생기
300 : 보상 자세 처리부

Claims (15)

  1. 작업 공간 상에서 로봇의 동작을 제어하기 위한 실시간 위빙 모션 제어 장치에 있어서,
    상기 작업 공간 상에서 상기 로봇의 주 이동 경로를 결정하고, 상기 결정된 주 이동 경로를 구성하는 단위 모션을 발생시키고, 단위 모션이 연결된 연속 모션 중 오프셋을 동적으로 변경하는 위빙을 발생시키며, 상기 작업 환경에 따라 결정되는 보상 변위 및 보상 회전량 중 적어도 하나를 생성하는 전처리부; 및
    상기 단위 모션과 상기 위빙, 및 상기 보상 변위와 상기 보상 회전량 중 적어도 하나에 따라 상기 작업 공간상에서 상기 로봇의 위치 및 회전량을 산출하는 작업공간 모션 합성부를 포함하고,
    상기 전처리부는,
    상기 로봇의 모션 시작 전에 결정된 주 이동 경로 또는 실시간으로 생성되는 주 이동 경로를 연속모션 방법 선택 정보에 따라 결정하고, 상기 단위 모션을 생성하는 연속 모션 처리부;
    상기 로봇의 모션 시작 전에 결정된 위빙 또는 실시간으로 생성되는 위빙을 위빙모션 방법 선택 정보에 따라 선택하고 상대 위빙량을 생성하는 위빙모션 처리부; 및
    상기 작업 공간의 상황 변화에 따른 임의의 변위 또는 회전량을 모션에 반영하기 위한 상기 보상 변위 또는 상기 보상 회전량을 생성하는 보상 자세 처리부를 포함하는 실시간 위빙 모션 제어 장치.
  2. 삭제
  3. 제1항에 있어서,
    상기 연속모션 처리부는,
    상기 모션 시작 전에 결정된 주 이동 경로가 저장되어 있는 경로 리스트 저장부;
    상기 작업 공간의 상황 변화 또는 모션 경로 변경의 사유가 발생한 경우, 실시간으로 새로운 단위 모션을 생성하는 실시간 경로 발생기;
    상기 실시간 경로 발생기로부터 생성된 단위 모션을 저장하는 경로 큐;
    상기 경로 큐의 단위 모션 및 상기 경로 리스트 저장부의 단위 모션 중 하나를 상기 연속모션 방법 선택 정보에 따라 선택하는 경로 선택기; 및
    소정의 작업 시작점과 작업 종료점을 나타내는 연속모션 시작/끝 정보에 따라, 상기 경로 선택기로부터 전달되는 단위 모션을 연속 모션으로 연결하는 작업공간 연속모션 발생기를 포함하는 실시간 위빙 모션 제어 장치.
  4. 제3항에 있어서,
    상기 작업공간 연속모션 발생기는,
    단위 모션 시작 방법에 따라 연속 모션 중 n+1번째 단위 모션을 시작하고, 이전모션 처리 방법에 따라 n번째 단위 모션을 처리하는 실시간 위빙 모션 제어 장치.
  5. 제4항에 있어서,
    상기 단위 모션 시작 방법은,
    상기 n번째 단위 모션의 가속 또는 등속에서 감속으로 변화하는 시점에 상기 n+1번째 단위 모션을 시작하는 방법;
    상기 n번째 단위 모션의 가속에서 등속 또는 감속으로 변환하는 시점에 상기 n+1번째 단위 모션을 시작하는 방법;
    상기 n번째 단위 모션이 정지하기 일정 시간 전 시점에 상기 n+1번째 단위 모션을 시작하는 방법; 및
    상기 n번째 단위 모션 및 n-1번째 이전 단위 모션 간의 중첩 모션이 끝나는 시점에 n+1번째 단위 모션을 시작하는 방법 중 하나인 실시간 위빙 모션 제어 장치.
  6. 제4항에 있어서,
    상기 이전모션 처리 방법은,
    상기 n번째 단위 모션을 감속하고, 상기 n+1번째 단위 모션을 시작하는 방법; 및
    상기 n번째 단위 모션을 그대로 유지하고, 상기 n+1번째 단위 모션을 시작하는 방법 중 하나인 실시간 위빙 모션 제어 장치.
  7. 제1항에 있어서,
    상기 위빙모션 처리부는,
    상기 모션 시작 전에 결정된 위빙 리스트가 저장된 위빙 리스트 저장부;
    상기 작업 공간의 상황 변화 또는 작업 중 모션 경로 변경 사유가 발생하면, 실시간으로 위빙을 생성하는 실시간 위빙 발생기;
    상기 실시간 위빙 발생기로부터 생성된 위빙을 단위 위빙 단위로 저장하는 위빙큐;
    상기 위빙모션 방법 선택 정보에 따라 상기 위빙 리스트에 포함된 단위 위빙 또는 상기 위빙큐의 단위 위빙을 선택하는 위빙 선택기; 및
    상기 위빙 선택기에 의해 선택된 단위 위빙을 구분하기 위한 위빙 시작/끝 정보, 위빙 샘플링 시간 및 위빙기준변수 정보를 입력받고, 상기 선택된 단위 위빙 및 위빙기준변수 정보를 이용하여 상기 위빙 샘플링 시간 내에 상대 위빙량을 결정하는 작업공간 위빙 모션 발생기를 포함하고,
    상기 위빙기준변수 정보는,
    현재 단위 위빙 중 다음 단위 위빙이 시행되는 위빙 변경 기점을 설정하기 위한 위빙기준변수를 포함하는 실시간 위빙 모션 제어 장치.
  8. 제7항에 있어서,
    상기 작업공간 위빙 모션 발생기는,
    상기 위빙기준변수를 상기 연속모션의 시간, 상기 연속모션의 자취길이, 또는 상기 연속모션의 자취회전량을 기준으로 결정하는 실시간 위빙 모션 제어 장치.
  9. 제8항에 있어서,
    상기 작업공간 위빙 모션 발생기는,
    상기 위빙기준변수를 결정하고, 위빙함수를 반복하는 위빙주기 및 상기 결정된 위빙기준변수를 이용하여 제1 변수를 결정하고, 상기 위빙함수를 상기 제1 변수에 대한 함수로 생성하는 실시간 위빙 모션 제어 장치.
  10. 제9항에 있어서,
    상기 작업공간 위빙 모션 발생기는,
    상기 위빙기준변수가 상기 위빙 변경기점에 도달하지 않으면, 상기 위빙기준변수 및 상기 제1 변수를 생성하는 실시간 위빙 모션 제어 장치.
  11. 제7항에 있어서,
    상기 작업공간 모션합성부, 상기 작업공간 연속모션 발생기, 상기 작업공간 위빙모션 발생기, 및 보상자세 발생기는 상기 위빙샘플링 시간에 동기되어 동작하는 실시간 위빙 모션 제어 장치.
  12. 제11항에 있어서,
    상기 작업공간 모션합성부로부터 로봇의 위치 및 회전량을 입력 받아, 상기 위빙 모션을 실현하기 위해 상기 로봇의 조인트의 동작을 생성하는 조인트 공간 변환기를 더 포함하고,
    상기 조인트 공간 변환기는,
    상기 위빙 샘플링 주기에 동기되어 동작하는 실시간 위빙 모션 제어 장치.
  13. 작업 공간 상에서 로봇의 동작을 제어하기 위한 실시간 위빙 모션 제어 방법에 있어서,
    상기 작업 공간의 상황 변화 및 작업 중 모션 경로 변경 사유를 포함하는 실시간 변경 사유의 발생 여부에 따라 실시간으로 단위 모션이 생성되고, 상기 로봇의 모션 시작 전에 결정된 단위 모션 또는 상기 실시간으로 생성되는 단위 모션 중 하나를 선택하는 단계;
    상기 실시간 변경 사유의 발생 여부에 따라 실시간으로 단위 위빙이 생성되고, 상기 로봇의 모션 시작 전에 결정된 단위 위빙 및 상기 실시간으로 생성되는 단위 위빙 중 하나를 선택하는 단계;
    상기 작업 공간의 상황 변화에 따라 결정되는 보상 변위 및 보상 회전량 중 적어도 하나를 생성하는 단계;
    상기 단위 모션, 상기 단위 위빙, 및 상기 보상 변위와 보상 회전량 중 적어도 하나에 따라 상기 작업 공간상에서 상기 로봇의 위치 및 회전량을 산출하는 단계; 및
    상기 선택된 단위 위빙에 따라 상대 위빙량을 결정하는 단계를 포함하는 실시간 위빙 모션 제어 방법.
  14. 제13항에 있어서,
    상기 상대 위빙량을 결정하는 단계는,
    상기 선택된 단위 위빙 및 위빙기준변수 정보를 이용하여 위빙 샘플링 시간 내에 상대 위빙량을 결정하는 단계를 포함하고,
    상기 위빙기준변수 정보는,
    현재 단위 위빙 중 다음 단위 위빙이 시행되는 위빙 변경 기점을 설정하기 위한 위빙기준변수를 포함하는 실시간 위빙 모션 제어 방법.
  15. 제14항에 있어서,
    상기 상대 위빙량을 결정하는 단계는,
    상기 위빙기준변수를 연속모션의 시간, 상기 연속모션의 자취길이, 또는 상기 연속모션의 자취회전량을 기준으로 결정하는 단계; 및
    위빙함수를 반복하는 위빙주기 및 상기 결정된 위빙기준변수를 이용하여 제1 변수를 결정하고, 상기 위빙함수를 상기 제1 변수에 대한 함수로 생성하는 단계를 포함하는 실시간 위빙 모션 제어 방법.
KR1020110113482A 2011-11-02 2011-11-02 실시간 위빙 모션 제어 장치 및 그 방법 KR101337650B1 (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1020110113482A KR101337650B1 (ko) 2011-11-02 2011-11-02 실시간 위빙 모션 제어 장치 및 그 방법
PCT/KR2012/008059 WO2013065955A1 (ko) 2011-11-02 2012-10-05 실시간 위빙 모션 제어 장치 및 그 방법
JP2014538695A JP5858168B2 (ja) 2011-11-02 2012-10-05 リアルタイムウィービングモーション制御装置およびその方法
US14/356,113 US9302390B2 (en) 2011-11-02 2012-10-05 Device and method for controlling weaving motion in real time
CN201280054048.XA CN104023922B (zh) 2011-11-02 2012-10-05 用于实时控制摆动动作的装置和方法
DE112012004592.0T DE112012004592B4 (de) 2011-11-02 2012-10-05 Vorrichtung und Verfahren zur Echtzeit-Steuerung von Wedelbewegungen

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110113482A KR101337650B1 (ko) 2011-11-02 2011-11-02 실시간 위빙 모션 제어 장치 및 그 방법

Publications (2)

Publication Number Publication Date
KR20130048566A KR20130048566A (ko) 2013-05-10
KR101337650B1 true KR101337650B1 (ko) 2013-12-05

Family

ID=48192266

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110113482A KR101337650B1 (ko) 2011-11-02 2011-11-02 실시간 위빙 모션 제어 장치 및 그 방법

Country Status (6)

Country Link
US (1) US9302390B2 (ko)
JP (1) JP5858168B2 (ko)
KR (1) KR101337650B1 (ko)
CN (1) CN104023922B (ko)
DE (1) DE112012004592B4 (ko)
WO (1) WO2013065955A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102235166B1 (ko) * 2015-09-21 2021-04-02 주식회사 레인보우로보틱스 실시간 로봇 시스템, 로봇 시스템 제어 장치 및 로봇 시스템 제어 방법
EP3428754B1 (de) * 2017-07-13 2023-02-15 Siemens Aktiengesellschaft Verfahren zum einrichten eines bewegungsautomaten und einrichtungsanordnung
CN107998656B (zh) * 2017-11-22 2020-12-22 福建天晴数码有限公司 一种编排方法及终端
JP6999444B2 (ja) * 2018-02-16 2022-01-18 日本電産サンキョー株式会社 産業用ロボットの補正値算出方法
KR20210085946A (ko) * 2019-12-31 2021-07-08 주식회사 한화 로봇의 제어 장치, 방법 및 컴퓨터 프로그램
JP2023047209A (ja) 2021-09-24 2023-04-05 株式会社神戸製鋼所 ウィービング制御方法、溶接制御装置、溶接システム及びウィービング制御プログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06222817A (ja) * 1993-01-27 1994-08-12 Komatsu Ltd ロボットのウィービング制御装置
KR20010081275A (ko) * 2000-02-11 2001-08-29 윤종용 용접로봇 교시위치 보정방법 및 용접로봇시스템

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6188975A (ja) * 1984-10-05 1986-05-07 Fanuc Ltd 自動溶接機の経路補正方式
JPH07106454B2 (ja) * 1989-06-14 1995-11-15 新明和工業株式会社 溶接線倣い制御方法
JP3146550B2 (ja) * 1991-08-26 2001-03-19 株式会社日立製作所 産業用ロボットの制御装置
JPH0720919A (ja) 1993-06-22 1995-01-24 Mitsubishi Heavy Ind Ltd マニプレータの制御装置
JP3208261B2 (ja) * 1994-10-07 2001-09-10 株式会社神戸製鋼所 アーク溶接ロボット
KR0155913B1 (ko) 1995-10-26 1998-12-15 김광호 위빙기능을 갖는 로봇제어 방법
JPH10244367A (ja) 1997-03-03 1998-09-14 Fanuc Ltd 溶接ロボットシステム
JPH11296215A (ja) * 1998-04-07 1999-10-29 Daihen Corp 産業用ロボットの自動プログラミング方法
AT410641B (de) 2000-04-05 2003-06-25 Fronius Schweissmasch Prod Verfahren zum fortlaufenden regeln bzw. nachführen einer position eines schweissbrenners bzw. eines schweisskopfes
JP2002096170A (ja) * 2000-09-19 2002-04-02 Daihen Corp アーク溶接ロボットの自動プログラミング法における自動センシングプロセスの修正法
CN1255249C (zh) * 2002-12-05 2006-05-10 上海交通大学 机器人运行轨迹坐标在线补偿方法
JP2004252814A (ja) 2003-02-21 2004-09-09 Daihen Corp 多関節型ロボットの速度制御法および制御装置
JP4647325B2 (ja) * 2004-02-10 2011-03-09 株式会社小松製作所 建設機械の作業機の制御装置、建設機械の作業機の制御方法、及びこの方法をコンピュータに実行させるプログラム
DE102004024378B4 (de) * 2004-05-17 2009-05-20 Kuka Roboter Gmbh Verfahren zur robotergestützten Vermessung von Objekten
SE0401542D0 (sv) * 2004-06-14 2004-06-14 Abb Ab A method and a device for providing feedback on weaving parameters
JP4498061B2 (ja) 2004-08-18 2010-07-07 株式会社ダイヘン 溶接ロボット制御装置
JP2007061983A (ja) * 2005-09-01 2007-03-15 Fanuc Ltd ロボット監視システム
JP4842656B2 (ja) 2006-02-14 2011-12-21 株式会社ダイヘン 溶接ロボット制御装置
JP4891726B2 (ja) * 2006-10-06 2012-03-07 株式会社神戸製鋼所 タンデムアーク溶接システムを制御するロボット制御装置およびそれを用いたアーク倣い制御方法
JP5049916B2 (ja) 2007-10-31 2012-10-17 株式会社神戸製鋼所 アーク溶接ロボットの制御装置、その方法及びそのプログラム
CN101402199B (zh) * 2008-10-20 2011-01-26 北京理工大学 基于视觉的手眼式低伺服精度机器人抓取移动目标的方法
JP5498246B2 (ja) * 2010-05-11 2014-05-21 株式会社神戸製鋼所 タンデムアーク溶接システムを制御するロボットコントローラ、それを用いたアーク倣い制御方法およびタンデムアーク溶接システム
KR20120005082A (ko) * 2010-07-08 2012-01-16 대우조선해양 주식회사 로봇 연속모션 블랜딩 방법 및 그 방법을 구현하기 위한 로봇 제어 시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06222817A (ja) * 1993-01-27 1994-08-12 Komatsu Ltd ロボットのウィービング制御装置
KR20010081275A (ko) * 2000-02-11 2001-08-29 윤종용 용접로봇 교시위치 보정방법 및 용접로봇시스템

Also Published As

Publication number Publication date
JP2014534083A (ja) 2014-12-18
WO2013065955A1 (ko) 2013-05-10
KR20130048566A (ko) 2013-05-10
CN104023922B (zh) 2016-08-24
US20140316568A1 (en) 2014-10-23
JP5858168B2 (ja) 2016-02-10
US9302390B2 (en) 2016-04-05
DE112012004592T5 (de) 2014-08-21
CN104023922A (zh) 2014-09-03
DE112012004592B4 (de) 2015-11-12

Similar Documents

Publication Publication Date Title
KR101337650B1 (ko) 실시간 위빙 모션 제어 장치 및 그 방법
CN111399514B (zh) 一种机器人时间最优轨迹规划方法
JP7058126B2 (ja) ロボット制御装置および自動組立システム
CN104191428A (zh) 一种基于scara机械手的运动轨迹规划方法及系统
KR20110041950A (ko) 여유자유도 제어를 이용한 로봇의 교시 및 재현 방법
JP6501470B2 (ja) 軌道生成方法、軌道生成装置、ロボット装置、プログラム及び記録媒体
US11865725B2 (en) Computer-assisted ascertainment of a movement of an apparatus
EP3666476A1 (en) Trajectory generation system and trajectory generating method
JP2019063912A (ja) ロボット制御データ処理方法、ロボット制御データ処理装置、およびロボットシステム
CN107309873B (zh) 机械臂运动控制方法和系统
US9975244B1 (en) Real-time generation of trajectories for actuators of a robot
JP6123595B2 (ja) 2軸ロボットの速度制御方法
JP7042209B2 (ja) 軌道生成装置、軌道生成方法、及びロボットシステム
Khalifa et al. New model-based manipulation technique for reshaping deformable linear objects
Messner et al. Efficient online computation of smooth trajectories along geometric paths for robotic manipulators
JPH0693209B2 (ja) ロボツトの円弧補間姿勢制御装置
JP4528577B2 (ja) 工業用ロボット
KR100540588B1 (ko) 모션 제어의 실시간 응답을 위한 궤적발생방법 및 시스템
JP7060700B2 (ja) コーディネートシステム、ハンドリング装置及び方法
Boccolato et al. 3D kinematics of a tentacle robot
JP3668821B2 (ja) ロボットコントローラおよびロボット制御方法
CN111331577A (zh) 机器人的控制装置及控制方法
WO2022009921A1 (ja) 軌道生成装置および自動位置制御装置
Dragne Directional Kinematics—First Step in Robotic Movement
Tyapin et al. Long arm manipulator path interpolation using 4th order b-splines

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20171031

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20181031

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20191031

Year of fee payment: 7