KR20190020484A - 로봇의 교시 장치, 방법 및 시스템 - Google Patents

로봇의 교시 장치, 방법 및 시스템 Download PDF

Info

Publication number
KR20190020484A
KR20190020484A KR1020170105511A KR20170105511A KR20190020484A KR 20190020484 A KR20190020484 A KR 20190020484A KR 1020170105511 A KR1020170105511 A KR 1020170105511A KR 20170105511 A KR20170105511 A KR 20170105511A KR 20190020484 A KR20190020484 A KR 20190020484A
Authority
KR
South Korea
Prior art keywords
joints
robot
teaching
user
remaining
Prior art date
Application number
KR1020170105511A
Other languages
English (en)
Other versions
KR102474838B1 (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 KR1020170105511A priority Critical patent/KR102474838B1/ko
Priority to CN201780001646.3A priority patent/CN109699177A/zh
Priority to EP17922778.0A priority patent/EP3674039A4/en
Priority to PCT/KR2017/012595 priority patent/WO2019039654A1/ko
Publication of KR20190020484A publication Critical patent/KR20190020484A/ko
Priority to US16/797,151 priority patent/US20200189094A1/en
Application granted granted Critical
Publication of KR102474838B1 publication Critical patent/KR102474838B1/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/0081Programme-controlled manipulators with master teach-in means
    • 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
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J18/00Arms
    • B25J18/02Arms extensible
    • B25J18/04Arms extensible rotatable
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/02Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type
    • B25J9/04Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type by rotating at least one arm, excluding the head movement itself, e.g. cylindrical coordinate type or polar coordinate type
    • B25J9/041Cylindrical coordinate type
    • B25J9/042Cylindrical coordinate type comprising an articulated arm
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • B25J9/106Programme-controlled manipulators characterised by positioning means for manipulator elements with articulated links
    • 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
    • B25J9/1643Programme controls characterised by the control loop redundant control
    • 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • G05B19/423Teaching successive positions by walk-through, i.e. the tool head or end effector being grasped and guided directly, with or without servo-assistance, to follow a path

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

본 발명의 일 실시예에 따른 말단이 향하는 방향을 일정하게 유지하는 N(N은 자연수)개의 관절을 포함하는 로봇의 교시(Teaching)방법은, 상기 말단이 향하고자 하는 기준 방향을 획득하는 단계; 상기 로봇에 대한 사용자의 교시와 대응되도록 상기 N개의 관절 중 M(M은 자연수, N>M)개의 관절의 각도를 산출하는 단계; 및 상기 M개의 관절의 각도에 기초하여, 상기 말단이 상기 기준 방향을 향하도록 하는 나머지 관절들의 각도를 산출하는 단계;를 포함할 수 있다. 이때 상기 나머지 관절들은 상기 N개의 관절 중 상기 M개의 관절을 제외한 나머지일 수 있다.

Description

로봇의 교시 장치, 방법 및 시스템{APPARATUS, METHOD AND SYSTEM FOR TEACHING ROBOT}
본 발명의 실시예들은 로봇의 교시 장치, 방법 및 시스템에 관한 것이다.
기술의 급격한 발전에 따라 로봇(robot)은 사람을 대신하여 각종 작업을 수행하는 도구로서 중요한 역할을 수행하고 있다. 로봇은 주로 사람의 팔을 대신하여 제조업 생산 라인에서 물류, 조립, 용접, 페인팅을 비롯한 여러 형태의 작업의 자동화에 사용됨으로써 생산성 향상에 기여한다.
한편 이러한 로봇은 사용자의 교시에 따라 동작하는 경우도 존재하며, 이러한 교시에 있어서 로봇 동작의 정확도를 향상시킬 수 있는 기술의 필요성이 대두되고 있는 실정이다.
본 발명은 교시간에 로봇의 말단이 향하는 방향을 일정하게 유지하도록 할 수 있는 로봇의 교시 방법, 장치 및 시스템을 제공하고자 한다.
또한 본 발명은 사용자의 교시에 따라 로봇의 말단이 소정의 요구 조건을 보다 쉽게 만족시키도록 할 수 있는 로봇의 교시 방법, 장치 및 시스템을 제공하고자 한다.
또한 본 발명은 일반적인 다관절 구조의 로봇에서, 일부 관절을 로봇의 말단이 향하는 방향을 일정하게 유지하도록 하는 목적으로 사용할 수 있도록 하는 로봇의 교시 방법, 장치 및 시스템을 제공하고자 한다.
또한 본 발명은 보다 정확하고 정교한 교시가 가능하도록 하는 로봇의 교시 방법, 장치 및 시스템을 제공하고자 한다.
본 발명의 일 실시예에 따른 말단이 향하는 방향을 일정하게 유지하는 N(N은 자연수)개의 관절을 포함하는 로봇의 교시(Teaching)방법은, 상기 말단이 향하고자 하는 기준 방향을 획득하는 단계; 상기 로봇에 대한 사용자의 교시와 대응되도록 상기 N개의 관절 중 M(M은 자연수, N>M)개의 관절의 각도를 산출하는 단계; 및 상기 M개의 관절의 각도에 기초하여, 상기 말단이 상기 기준 방향을 향하도록 하는 나머지 관절들의 각도를 산출하는 단계;를 포함할 수 있다. 이때 상기 나머지 관절들은 상기 N개의 관절 중 상기 M개의 관절을 제외한 나머지일 수 있다.
상기 교시는 상기 로봇에 대한 사용자의 물리적인 조작에 의해 수행되고, 상기 M개의 관절의 각도를 산출하는 단계는 상기 로봇에 대한 사용자의 물리적인 조작에 따라 상기 M개의 관절을 상기 M개의 관절의 각도에 대응되도록 구동하는 단계;를 포함할 수 있다.
상기 교시는 상기 M개의 관절 중 적어도 하나의 관절에 대한 제어신호에 의해 수행되고, 상기 제어신호는 사용자의 입력부의 조작에 의해 생성되고, 상기 M개의 관절의 각도를 산출하는 단계는 상기 M개의 관절 중 적어도 하나의 관절에 대한 제어신호에 따라 상기 M개의 관절 중 적어도 하나의 관절을 구동하는 단계;를 포함할 수 있다.
상기 나머지 관절들의 각도를 산출하는 단계는 상기 산출된 나머지 관절들의 각도에 기초하여 상기 나머지 관절들을 구동하는 단계;를 포함할 수 있다.
상기 나머지 관절은 상기 N개의 관절 중 상기 말단에 가장 근접하고 연속하는 관절일 수 있다. 상기 N은 6이고, 상기 M은 3일 수 있다. 상기 기준 방향은 상기 로봇의 작업 면(Plane)과 직교하는 방향일 수 있다.
본 발명의 일 실시예에 따른 말단이 향하는 방향을 일정하게 유지하는 N(N은 자연수)개의 관절을 포함하는 로봇의 교시(Teaching)장치는 제어부를 포함하고, 상기 제어부는 상기 말단이 향하고자 하는 기준 방향을 획득하고, 상기 로봇에 대한 사용자의 교시와 대응되도록 상기 N개의 관절 중 M(M은 자연수, N>M)개의 관절의 각도를 산출하고, 상기 M개의 관절의 각도에 기초하여, 상기 말단이 상기 기준 방향을 향하도록 하는 나머지 관절들의 각도를 산출할 수 있다. 이때 상기 나머지 관절들은 상기 N개의 관절 중 상기 M개의 관절을 제외한 나머지일 수 있다.
상기 교시는 상기 로봇에 대한 사용자의 물리적인 조작에 의해 수행되고, 상기 제어부는 상기 로봇에 대한 사용자의 물리적인 조작에 따라 상기 M개의 관절을 상기 M개의 관절의 각도에 대응되도록 구동할 수 있다.
상기 교시는 상기 M개의 관절 중 적어도 하나의 관절에 대한 제어신호에 의해 수행되고, 상기 제어신호는 사용자의 입력부의 조작에 의해 생성되고, 상기 제어부는 상기 M개의 관절 중 적어도 하나의 관절에 대한 제어신호에 따라 상기 M개의 관절 중 적어도 하나의 관절을 구동할 수 있다.
상기 제어부는 상기 산출된 나머지 관절들의 각도에 기초하여 상기 나머지 관절들을 구동할 수 있다.
상기 나머지 관절은 상기 N개의 관절 중 상기 말단에 가장 근접하고 연속하는 관절일 수 있다. 상기 N은 6이고, 상기 M은 3일 수 있다. 상기 기준 방향은 상기 로봇의 작업 면(Plane)과 직교하는 방향일 수 있다.
본 발명의 일 실시예에 따른 교시간에 로봇의 말단이 향하는 방향을 일정하게 유지하도록 하는 로봇의 교시(Teaching) 시스템은, N(N은 자연수)개의 관절을 포함하는 로봇; 및 상기 로봇의 말단이 향하는 방향을 일정하게 유지하도록 상기 로봇을 제어하는 로봇 교시 장치;를 포함할 수 있다. 이때 상기 로봇 교시 장치는 상기 로봇의 말단이 향하고자 하는 기준 방향을 획득하고, 상기 로봇에 대한 사용자의 교시와 대응되도록 상기 N개의 관절 중 M(M은 자연수, N>M)개의 관절의 각도를 산출하고, 상기 M개의 관절의 각도에 기초하여, 상기 말단이 상기 기준 방향을 향하도록 하는 나머지 관절들의 각도를 산출할 수 있다. 이때 상기 나머지 관절들은 상기 N개의 관절 중 상기 M개의 관절을 제외한 나머지일 수 있다.
상기 교시는 상기 로봇에 대한 사용자의 물리적인 조작에 의해 수행되고, 상기 로봇 교시 장치는 상기 로봇에 대한 사용자의 물리적인 조작에 따라 상기 M개의 관절을 상기 M개의 관절의 각도에 대응되도록 구동할 수 있다.
상기 교시는 상기 M개의 관절 중 적어도 하나의 관절에 대한 제어신호에 의해 수행되고, 상기 제어신호는 사용자의 상기 로봇 교시 장치의 입력부의 조작에 의해 생성되고, 상기 로봇 교시 장치는 상기 M개의 관절 중 적어도 하나의 관절에 대한 제어신호에 따라 상기 M개의 관절 중 적어도 하나의 관절을 구동할 수 있다.
상기 로봇 교시 장치는 상기 산출된 나머지 관절들의 각도에 기초하여 상기 나머지 관절들을 구동할 수 있다. 상기 나머지 관절은 상기 N개의 관절 중 상기 말단에 가장 근접하고 연속하는 관절일 수 있다.
전술한 것 외의 다른 측면, 특징, 이점이 이하의 도면, 특허청구범위 및 발명의 상세한 설명으로부터 명확해질 것이다.
본 발명의 실시예들에 따르면 교시간에 로봇의 말단이 향하는 방향을 일정하게 유지하도록 할 수 있는 로봇의 교시 방법, 장치 및 시스템을 구현할 수 있다.
또한 사용자의 교시에 따라 로봇의 말단이 소정의 요구 조건을 보다 쉽게 만족시키도록 할 수 있는 로봇의 교시 방법, 장치 및 시스템을 구현할 수 있다.
또한 일반적인 다관절 구조의 로봇에서, 일부 관절을 로봇의 말단이 향하는 방향을 일정하게 유지하도록 하는 목적으로 사용할 수 있도록 하는 로봇의 교시 방법, 장치 및 시스템을 구현할 수 있다.
또한 보다 정확하고 정교한 교시가 가능하도록 하는 로봇의 교시 방법, 장치 및 시스템을 구현할 수 있다.
도 1은 본 발명의 일 실시예에 따른 로봇 시스템을 개략적으로 도시한다.
도 2는 본 발명의 일 실시예에 따른 제어부가 사용자의 교시에 따라 로봇을 제어하는 방법을 설명하기 위한 도면이다.
도 3은 본 발명의 일 실시예에 따른 로봇의 교시 후 말단의 방향을 설명하기 위한 도면이다.
도 4는 종래기술에 따른 로봇의 교시 후 말단의 방향을 설명하기 위한 도면이다.
도 5는 도 1의 로봇 교시 장치에 의해 수행되는 로봇의 교시 방법을 설명하기 위한 흐름도이다.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시 예를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
이하의 실시예에서, 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 용어들에 의해 한정되어서는 안 된다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
이하의 실시예에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 이하의 실시예에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 발명의 실시예들은 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들은 특정 기능들을 실행하는 다양한 개수의 하드웨어 또는/및 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 본 발명의 실시예들은 하나 이상의 마이크로프로세서들의 제어 또는 다른 제어 장치들에 의해서 다양한 기능들을 실행할 수 있는, 메모리, 프로세싱, 로직(logic), 룩업 테이블(look-up table) 등과 같은 직접 회로 구성들을 채용할 수 있다. 본 발명의 실시예의 구성 요소들이 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 잇는 것과 유사하게, 본 발명의 실시예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 본 발명의 실시예들은 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다. 매커니즘, 요소, 수단, 구성과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다. 상기 용어는 프로세서 등과 연계하여 소프트웨어의 일련의 처리들(routines)의 의미를 포함할 수 있다.
도 1은 본 발명의 일 실시예에 따른 로봇 시스템을 개략적으로 도시한다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 로봇 시스템은 로봇 교시 장치(100) 및 로봇(200)을 포함할 수 있다. 본 발명의 일 실시예에 따른 시스템은, 로봇(200)에 대한 사용자의 교시에도 불구하고, 로봇(200)의 말단이 일정한 방향을 유지하도록 할 수 있다.
본 발명에서 '교시(teaching)'는 사용자가 로봇(200)을 조작하여 로봇(200)이 특정 자세를 취하도록 하는 것을 의미할 수 있다.
이 때 '조작'은 사용자가 로봇(200)에 물리적인 힘을 가하여 로봇(200)이 특정 자세를 취하도록 하는 것을 의미할 수 있다. 이러한 경우 로봇(200)의 일부 관절(가령 211 내지 213)은 사용자에 의한 회전이 가능한 정도로의 저항력을 갖도록 적절하게 설정될 수 있다. 바꾸어 말하면, 사용자가 물리적인 조작을 통하여 로봇(200)을 교시하는 경우, 해당 관절의 자세 유지를 위한 회전 토크(Toque)는 사용자에 의해 회전 각도의 변경이 가능할 정도의 세기로 설정될 수 있다.
한편 '조작'은 사용자가 로봇(200)의 입력부를 조작하여 제어신호를 생성하고, 로봇(200)이 제어신호에 따라 특정 자세를 취하도록 하는 것을 의미할 수도 있다. 보다 구체적으로 사용자의 조작은 일부 관절(가령 211 내지 213)의 각도를 입력하는 것을 의미할 수도 있고, 일부 파트(221 내지 223)들의 위치를 입력하는 것을 의미할 수도 있다. 물론 사용자의 조작은 디스플레이부(120)상에 표시되는 로봇(200)의 형상을 드래그 하거나 클릭 함으로써 조작하는 것을 의미할 수도 있다. 다만 이는 예시적인 것으로 본 발명의 사상은 이에 한정되는 것이 아니다.
본 발명에서 로봇(200)의 '자세'는 3차원 공간에서의 로봇(200)의 특정 상태를 의미할 수 있다. 가령 로봇(200)이 다관절 로봇인 경우, 로봇(200)의 '자세'는 로봇이 특정 상태일 때 각 관절의 회전각도, 각 파트의 3차원 공간에서의 위치 및 각 관절을 구성하는 엑츄에이터의 구동조건 중 적어도 하나를 의미할 수 있다.
본 발명에서 로봇(Robot, 200)은 하나 이상의 엑츄에이터 및 하나 이상의 파트를 포함하는 장치일 수 있다. 이 때 엑츄에이터(Actuator)는 제어신호에 기초하여 전기에너지를 운동에너지로 변환하는 다양한 장치를 의미할 수 있다. 가령 엑츄에이터는 직류(DC) 서보 모터, 교류(AC) 서보 모터, 스테핑 모터, 리니어 모터, 유압 실린더, 유압 모터, 공기압 실린더 및 공기압 모터 중 어느 하나 일 수 있다. 다만 이는 예시적인 것으로 본 발명의 사상이 이에 제한되는 것은 아니다.
한편 파트(Part)는 전술한 엑츄에이터를 특정 위치에 고정시키는 구조물 또는 엑츄에이터에 고정되어 운동하는 구조물을 의미할 수 있다.
본 발명의 일 실시예에 따른 로봇은 가령 다관절 로봇, 스카라 로봇 및 원통 좌표 로봇 중 어느 하나일 수 있다. 다관절 로봇(Articulated Robot)은 하나 이상의 관절 및 관절과 다른 관절을 연결하는 파트(또는 바디)를 포함하는 로봇일 수 있다. 스카라 로봇(Scara Robot)은 로봇의 암(Arm)이 특정 평면 내에서 동작하는 로봇일 수 있다. 원동 좌표 로봇(Cylindrical Robot)은 로봇의 암(Arm)이 적어도 1개의 회전 관절과 적어도 1개의 직진 관절을 갖는 로봇을 의미할 수 있다. 다만 이는 예시적인 것이며, 본 발명의 사상이 이에 제한되는 것은 아니다. 따라서 전술한 바와 같이 하나 이상의 엑츄에이터(Actuator) 및 하나 이상의 파트(Part)를 포함하고 제어신호에 따라 동작하는 장치는 본 발명의 로봇에 해당할 수 있다.
이하에서는 설명의 편의를 위하여 로봇(200)이 도 1에 도시된 바와 같은 다관절 로봇으로, N개의 관절과 각 관절을 연결하는 파트를 포함하는 것을 전제로 설명한다. 보다 상세히, 로봇(200)은 여섯 개의 관절(211, 212, 213, 214, 215, 216) 및 여섯 개의 파트(221, 222, 223, 224, 225, 226)를 포함하며, 여섯 개의 관절(211, 212, 213, 214, 215, 216) 각각은 관절의 회전 각도를 측정하는 각도 측정 수단을 포함하는 것을 전제로 설명한다. 또한 로봇(200)의 여섯개의 파트 중 어느 하나의 파트(221)는 지면에 고정되어 있는 것을 전제로 설명한다.
본 발명의 일 실시예에 따른 로봇 교시 장치(100)는 로봇의 제어 및/또는 교시를 위한 장치로, 제어부(110), 디스플레이부(120) 및 입력부(130)를 포함할 수 있다.
본 발명의 일 실시예에 따른 제어부(110)는 사용자의 교시에 따라 일부 관절을 구동시키고, 나머지 관절을 소정의 조건에 따라 구동시킬 수 있다. 이 때 제어부(110)는 프로세서(processor)와 같이 데이터를 처리할 수 있는 모든 종류의 장치를 포함할 수 있다. 여기서, '프로세서(processor)'는, 예를 들어 프로그램 내에 포함된 코드 또는 명령으로 표현된 기능을 수행하기 위해 물리적으로 구조화된 회로를 갖는, 하드웨어에 내장된 데이터 처리 장치를 의미할 수 있다. 이와 같이 하드웨어에 내장된 데이터 처리 장치의 일 예로써, 마이크로프로세서(microprocessor), 중앙처리장치(central processing unit: CPU), 프로세서 코어(processor core), 멀티프로세서(multiprocessor), ASIC(application-specific integrated circuit), FPGA(field programmable gate array) 등의 처리 장치를 망라할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
본 발명의 일 실시예에 따른 디스플레이부(120)는 로봇(200)의 현태 동작 상태 등을 표시할 수 있다. 따라서 디스플레이부(120)는 도형, 문자 또는 영상을 표시하는 표시장치를 의미할 수 있다. 예컨대, 디스플레이부(120)는 CRT(Cathode Ray Tube), LCD(Liquid Crystal Display), PDP (Plasma Display Panel), LED(Light-Emitting Diode) 및 OLED(Organic Light Emitting Diode) 중 어느 하나로 구성될 수 있으나, 본 발명의 사상은 이에 제한되지 않는다.
본 발명의 일 실시예에 따른 입력부(130)는 사용자의 입력을 획득하는 다양한 수단을 의미할 수 있다. 예컨대, 입력부(130)는 키보드, 마우스, 트랙볼, 마이크 및 버튼 중 어느 하나이거나 하나 이상의 조합일 수 있다. 또한 입력부(130)는 전술한 디스플레이부(120)상에 입력을 수행하는 터치 수단을 의미할 수도 있다. 다만 이는 예시적인 것으로 본 발명의 사상이 이에 제한되는 것은 아니다.
도면에는 도시되지 않았지만, 본 발명의 일 실시예에 따른 로봇 교시 장치(100)는 통신부(미도시) 및 메모리(미도시)를 더 포함할 수 있다.
이 때 통신부(미도시)는 로봇 교시 장치(100)가 로봇(200)과 같은 외부장치와 유무선 연결을 통해 제어 신호를 송수신하기 위해 필요한 하드웨어 및 소프트웨어를 포함하는 장치일 수 있다.
메모리(미도시)는 로봇 교시 장치(100)가 처리하는 데이터를 일시적 또는 영구적으로 저장하는 기능을 수행한다. 메모리는 자기 저장 매체(magnetic storage media) 또는 플래시 저장 매체(flash storage media)를 포함할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
한편 본 발명의 일 실시예에 따른 로봇 교시 장치(100)는 도시된 바와 같이 로봇(200) 및/또는 로봇(200)의 제어 장치(미도시)와 별도로 구비되는 장치일 수 있다. 또한 도시된 바와 달리, 로봇 교시 장치(100)는 로봇(200) 및/또는 로봇(200)의 제어 장치(미도시)에 포함된 장치일 수 있다. 바꾸어 말하면, 로봇(200) 및/또는 로봇(200)의 제어 장치(미도시)는 본 발명의 일 실시예에 따른 로봇의 교시 방법을 수행할 수 있다. 다만 이하에서는 설명의 편의를 위하여 도 1에 도시된 바와 같이 로봇 교시 장치(100)가 별도로 구비됨을 전제로 설명한다.
본 발명의 일 실시예에 따른 로봇 교시 장치(100)의 제어부(110)는 교시 과정 중 로봇(200)의 말단(226)이 향하는 방향이 일정하게 유지되도록 로봇(200)을 제어할 수 있다.
본 발명에서 로봇(200)의 '말단'은 로봇(200)의 작업의 대상이 되는 작업물과 가장 가까운 파트를 의미할 수 있다. 가령 로봇(200)이 도 1에 도시된 바와 같이 다관절 로봇인 경우, 가장 마지막 파트(226)가 작업물과 가장 가까운 파트이므로, 로봇(200)의 말단이 될 수 있다. 이하에서는 설명의 편의를 위하여 가장 마지막 파트(226)와 말단을 동일한 의미로 사용한다.
본 발명의 일 실시예에 따른 제어부(110)는 로봇(200)의 말단(226)이 향하고자 하는 기준 방향(310)을 획득할 수 있다.
본 발명에서 '기준 방향(310)'은 교시에 따른 로봇(200)의 자세 변화에도 불구하고, 로봇의 말단(226)이 향하고자 하는 방향을 의미할 수 있다. 이때 기준 방향은 가령 3차원 공간상의 작업 면에 대한 수직인 방향, 또는 남쪽방향일 수 있다.
이와 같은 기준 방향(310)은 사용자의 기준 방향(310)에 대한 교시로 획득될 수 있다. 가령 사용자는 로봇(200)의 말단(226)이 자신이 설정하고자 하는 기준 방향을 향하도록 말단(226)을 비롯한 로봇(200)의 각 파트를 물리적으로 조작함으로써 기준 방향을 설정할 수 있다.
또한 기준 방향(310)은 입력부(130)에 대한 사용자의 조작에 따라 획득될 수도 있다. 가령 사용자는 입력부(130)를 통하여 로봇(200)의 적어도 하나의 관절에 대한 제어신호를 생성하고, 각 관절(211 내지 216)에 전달함으로써 기준 방향(310)을 설정할 수 있다. 다만 이는 예시적인 것으로 본 발명의 사상이 이에 한정되는 것은 아니다.
본 발명의 일 실시예에 따른 제어부(110)는 로봇(200)에 대한 사용자의 교시와 대응되도록 로봇(200)의 N개의 관절 중 M개의 관절의 각도를 산출할 수 있다. 또한 제어부(110)는 전술한 과정에 의해 산출된 M개의 관절의 각도에 대응되도록 M개의 관절을 구동할 수 있다. 이때 M은 로봇(200)의 관절의 수인 N보다 작은 자연수 일 수 있다.
본 발명에서 '관절을 각도에 대응되도록 구동하는 것'은 해당 각도에 해당하도록 관절을 회전시키는 것을 의미할 수 있다. 가령 교시 전 관절(211)의 각도가 0도였고, 교시에 따라 산출된 각도가 -30도 인 경우, '관절(211)을 -30도에 대응되도록 구동하는 것'은 제어부(110)가 관절(211)을 음의 방향으로 30도 회전시키는 것을 의미할 수 있다.
도 2는 본 발명의 일 실시예에 따른 제어부(110)가 사용자의 교시에 따라 로봇(200)을 제어하는 방법을 설명하기 위한 도면이다.
설명의 편의를 위하여, 전술한 과정에 따라 기준 방향(310)은 공간상의 작업면(400)에 수직하는 방향으로 설정되었으며, 사용자의 교시는 첫 번째 관절(211)을 도시된 방향(330)으로, 두 번째 관절(212)을 도시된 방향(320)으로 회전시키는 조작을 포함한다고 가정한다. 또한 제어부(110)는 교시에 따라 세 개의 관절(211, 212, 213)의 각도를 산출한다고 가정한다.(즉 M=3)
이러한 경우 본 발명의 일 실시예에 따른 제어부(110)는 전술한 바와 같이 사용자의 교시에 대응되도록 6개의 관절 중 3개의 관절의 각도를 산출할 수 있다. 또한 제어부(110)는 전술한 3개의 관절을 각각의 관절에 대해 산출된 각도에 대응되도록 구동할 수 있다.
가령 제어부(110)는 사용자의 교시에 대응되도록 첫 번째 내지 세 번째 관절(211 내지 213)의 각도를 산출할 수 있다. 이때 전술한 가정에 따르면 사용자의 교시는 첫 번째 관절(211)과 두 번째 관절(212)에 대한 조작만을 포함하므로, 제어부(110)는 첫 번째 관절(211)과 두 번째 관절(212)만의 각도를 산출할 수 있다. 물론 제어부(110)는 세 번째 관절(213)의 회전 각도를 종전 각도와 동일한 각도(각도의 변화가 없으므로)로 산출할 수도 있다.
이어서 제어부(110)는 첫 번째 관절(211)과 두 번째 관절(212)을 각각의 관절에 대해 산출된 각도에 대응되도록 구동할 수 있다. 물론 제어부(110)는 세 번째 관절(213)을 현재 각도를 유지하도록 구동할 수도 있다.
본 발명의 일 실시예에 따른 제어부(110)는 전술한 과정에 의해서 산출된 M개의 관절의 각도에 기초하여, 말단(226)이 기준 방향(310)을 향하도록 하는 나머지 관절들의 각도를 산출할 수 있다.
가령 전술한 바와 같이 제어부(110)가 사용자의 교시에 따라 세 개의 관절(211 내지 213)의 각도를 산출하는 경우, 제어부(110)는 말단(226)이 기준 방향(310)을 향하도록 하는 나머지 관절(214, 215, 216)들의 각도를 산출할 수 있다.
이때 제어부(110)는 다양한 방법에 따라 나머지 관절(214, 215, 216)들의 각도를 산출할 수 있다. 가령 제어부(110)는 로봇(200)을 구성하는 관절(211 내지 216)들과 각 관절을 연결하는 파트(221 내지 226)에 관한 정보를 포함하는 로봇(200)의 3차원 모델링 데이터와 전술한 과정에 의해 산출된 M개의 관절(211 내지 213)의 각도에 기초하여, 나머지 관절(214 내지 216)들의 각도를 산출할 수 있다. 다만 이는 예시적인 것으로 본 발명의 사상이 이에 한정되는 것은 아니다.
이어서 본 발명의 일 실시예에 따른 제어부(110)는 산출된 나머지 관절들의 각도에 기초하여 나머지 관절들을 구동할 수 있다.
이로써 본 발명은 다관절 로봇에 있어서, 사용자의 교시 또는 조작에도 불구하고 말단(226)이 항상 일정한 방향을 향하도록 할 수 있다.
도 3은 본 발명의 일 실시예에 따른 로봇(200)의 교시 후 말단(226)의 방향(310a)을 설명하기 위한 도면이다.
설명의 편의를 위하여, 도 2에서와 마찬가지로 기준 방향(310)은 공간상의 작업면(400)에 수직하는 방향으로 설정되었으며, 사용자의 교시는 도 2에 도시된 바와 같이 첫 번째 관절(211)을 도시된 방향(330)으로, 두 번째 관절(212)을 도시된 방향(320)으로 회전시키는 조작을 포함한다고 가정한다. 또한 제어부(110)는 교시에 따라 세 개의 관절(211, 212, 213)을 구동한 상태라고 가정한다.
전술한 바와 같이 본 발명의 일 실시예에 따른 제어부(110)는 사용자의 교시에 따라 말단(226)이 기준 방향(310)을 향하도록 하는 나머지 관절(214, 215, 216)들의 각도를 산출하고, 산출된 각도에 따라 나머지 관절(214, 215, 216)들을 동작시킬 수 있다. 이에 따라 말단(226)이 향하는 방향(310a)은 최초 설정된 기준 방향(310)과 동일한 방향으로, 작업면(400)에 수직한 방향일 수 있다.
도 4는 종래기술에 따른 로봇(200)의 교시 후 말단(226)의 방향(310b)을 설명하기 위한 도면이다.
설명의 편의를 위하여, 도 2에서와 마찬가지로 기준 방향(310)은 공간상의 작업면(400)에 수직하는 방향으로 설정되었으며, 사용자의 교시는 도 2에 도시된 바와 같이 첫 번째 관절(211)을 도시된 방향(330)으로, 두 번째 관절(212)을 도시된 방향(320)으로 회전시키는 조작을 포함한다고 가정한다. 또한 제어부(110)는 교시에 따라 세 개의 관절(211 내지 213)을 구동한 상태라고 가정한다.
제어부(110)가 사용자의 교시에 나머지 관절(214 내지 216)들의 각도를 산출하지 않거나, 이에 따라 나머지 관절(214 내지 216)들을 동작시키지 않는 경우 도시된 바와 같이 말단(226)이 향하는 방향(310b)은 최초 설정한 기준 방향(310)과 상이한 방향으로, 작업면(400)에 수직한 방향이 아닐 수 있다.
이와 같이 종래기술에 따르면 사용자의 교시에 따라 로봇(200)의 말단(226)이 소정의 요구 조건(가령 특정 방향을 향하는 조건)을 만족시키기 어려운 문제점이 있었다.
나아가 모든 관절(211 내지 216)에 대한 사용자의 교시가 가능하여, 사용자가 말단(226)이 향하는 방향을 작업면(400)에 수직한 방향으로 조작하였다고 하더라고 조작된 상태가 정확하게 작업면(400)에 수직한 방향인지 여부를 확인할 수 없을 뿐만 아니라, 일부 관절의 각도 수정 등에 의해서 말단이 정렬된 방향이 쉽게 흐트러질 수 있는 문제점이 있었다.
본 발명은 다관절 로봇의 일부 관절에 대한 교시가 가능하도록 제어하고, 나머지 관절은 소정의 요구 조건을 만족시키도록 제어함으로써 상기와 같은 문제점을 해결할 수 있다.
이때 교시가 가능한 관절은 적어도 1개 이상일 수 있다. 한편 소정의 요구 조건을 만족시키도록 동작하는 관절은 적어도 3개 이상일 수 있으며, 복수의 관절 중 가장 말단에 근접하고 연속하는 관절일 수 있다.
한편 본 발명의 일 실시예에 따른 로봇(200)의 말단(226)에는 로봇(200)의 목적 및/또는 용도에 따른 툴(Tool)이 부착될 수 있다. 가령 말단(226)에 부착되는 툴은 작업물에 대한 영상을 획득하는 영상획득 장치일 수 있다. 이러한 경우 로봇(200)은 작업물의 조립 상태 등을 파악하기 위한 영상 획득의 목적으로 사용되는 것일 수 있다.
한편 상술한 바와 같은 방법은, 로봇(200)의 캘리브레이션(Calibration)을 위해 사용될 수도 있다. 가령 로봇(200)의 말단을 캘리브레이션을 위한 보드상의 복수의 지점에 위치시킨 뒤, 해당 지점에서의 각 관절의 각도를 확인함으로써 로봇(200)의 동작 오차 등을 확인할 수도 있다. 다만 이는 예시적인 것으로 본 발명의 사상이 이에 한정되는 것은 아니다.
도 5는 도 1의 로봇 교시 장치(100)에 의해 수행되는 로봇의 교시 방법을 설명하기 위한 흐름도이다. 이하에서는 도 1 내지 도 4에서 설명한 내용과 중복하는 내용의 상세한 설명은 생략한다.
본 발명의 일 실시예에 따른 로봇 교시 장치(100)는 로봇(200)의 말단(226)이 향하고자 하는 기준 방향(310)을 획득할 수 있다.(S51)
본 발명에서 '기준 방향(310)'은 교시에 따른 로봇(200)의 자세 변화에도 불구하고, 로봇의 말단(226)이 향하고자 하는 방향을 의미할 수 있다. 이때 기준 방향은 가령 3차원 공간상의 작업 면에 대한 수직인 방향, 또는 남쪽방향일 수 있다.
이와 같은 기준 방향(310)은 사용자의 기준 방향(310)에 대한 교시로 획득될 수 있다. 가령 사용자는 로봇(200)의 말단(226)이 자신이 설정하고자 하는 기준 방향을 향하도록 말단(226)을 비롯한 로봇(200)의 각 파트를 물리적으로 조작함으로써 기준 방향을 설정할 수 있다.
또한 기준 방향(310)은 입력부(130)에 대한 사용자의 조작에 따라 획득될 수도 있다. 가령 사용자는 입력부(130)를 통하여 로봇(200)의 적어도 하나의 관절에 대한 제어신호를 생성하고, 각 관절(211 내지 216)에 전달함으로써 기준 방향(310)을 설정할 수 있다. 다만 이는 예시적인 것으로 본 발명의 사상이 이에 한정되는 것은 아니다.
본 발명의 일 실시예에 따른 로봇 교시 장치(100)는 로봇(200)에 대한 사용자의 교시와 대응되도록 로봇(200)의 N개의 관절 중 M개의 관절의 각도를 산출할 수 있다.(S52) 또한 로봇 교시 장치(100)는 전술한 과정에 의해 산출된 M개의 관절의 각도에 대응되도록 M개의 관절을 구동할 수 있다. 이때 M은 로봇(200)의 관절의 수인 N보다 작은 자연수 일 수 있다.
본 발명에서 '관절을 각도에 대응되도록 구동하는 것'은 해당 각도에 해당하도록 관절을 회전시키는 것을 의미할 수 있다. 가령 교시 전 관절(211)의 각도가 0도였고, 교시에 따라 산출된 각도가 -30도 인 경우, '관절(211)을 -30도에 대응되도록 구동하는 것'은 로봇 교시 장치(100)가 관절(211)을 음의 방향으로 30도 회전시키는 것을 의미할 수 있다.
다시 도 2를 참조하여, 전술한 과정에 따라 기준 방향(310)은 공간상의 작업면(400)에 수직하는 방향으로 설정되었으며, 사용자의 교시는 첫 번째 관절(211)을 도시된 방향(330)으로, 두 번째 관절(212)을 도시된 방향(320)으로 회전시키는 조작을 포함한다고 가정한다. 또한 로봇 교시 장치(100)는 교시에 따라 세 개의 관절(211, 212, 213)의 각도를 산출한다고 가정한다.(즉 M=3)
이러한 경우 본 발명의 일 실시예에 따른 로봇 교시 장치(100)는 전술한 바와 같이 사용자의 교시에 대응되도록 6개의 관절 중 3개의 관절의 각도를 산출할 수 있다. 또한 로봇 교시 장치(100)는 전술한 3개의 관절을 각각의 관절에 대해 산출된 각도에 대응되도록 구동할 수 있다.
가령 로봇 교시 장치(100)는 사용자의 교시에 대응되도록 첫 번째 내지 세 번째 관절(211 내지 213)의 각도를 산출할 수 있다. 이때 전술한 가정에 따르면 사용자의 교시는 첫 번째 관절(211)과 두 번째 관절(212)에 대한 조작만을 포함하므로, 로봇 교시 장치(100)는 첫 번째 관절(211)과 두 번째 관절(212)만의 각도를 산출할 수 있다. 물론 로봇 교시 장치(100)는 세 번째 관절(213)의 회전 각도를 종전 각도와 동일한 각도(각도의 변화가 없으므로)로 산출할 수도 있다.
이어서 로봇 교시 장치(100)는 첫 번째 관절(211)과 두 번째 관절(212)을 각각의 관절에 대해 산출된 각도에 대응되도록 구동할 수 있다. 물론 로봇 교시 장치(100)는 세 번째 관절(213)을 현재 각도를 유지하도록 구동할 수도 있다.
본 발명의 일 실시예에 따른 로봇 교시 장치(100)는 전술한 과정에 의해서 산출된 M개의 관절의 각도에 기초하여, 말단(226)이 기준 방향(310)을 향하도록 하는 나머지 관절들의 각도를 산출할 수 있다.(S53)
가령 전술한 바와 같이 로봇 교시 장치(100)가 사용자의 교시에 따라 세 개의 관절(211 내지 213)의 각도를 산출하는 경우, 로봇 교시 장치(100)는 말단(226)이 기준 방향(310)을 향하도록 하는 나머지 관절(214, 215, 216)들의 각도를 산출할 수 있다.
이때 로봇 교시 장치(100)는 다양한 방법에 따라 나머지 관절(214, 215, 216)들의 각도를 산출할 수 있다. 가령 로봇 교시 장치(100)는 로봇(200)을 구성하는 관절(211 내지 216)들과 각 관절을 연결하는 파트(221 내지 226)에 관한 정보를 포함하는 로봇(200)의 3차원 모델링 데이터와 전술한 과정에 의해 산출된 M개의 관절(211 내지 213)의 각도에 기초하여, 나머지 관절(214 내지 216)들의 각도를 산출할 수 있다. 다만 이는 예시적인 것으로 본 발명의 사상이 이에 한정되는 것은 아니다.
이어서 본 발명의 일 실시예에 따른 로봇 교시 장치(100)는 산출된 나머지 관절들의 각도에 기초하여 나머지 관절들을 구동할 수 있다.
이로써 본 발명은 다관절 로봇에 있어서, 사용자의 교시 또는 조작에도 불구하고 말단(226)이 항상 일정한 방향을 향하도록 할 수 있다.
다시 도 2 내지 3을 참조하여, 기준 방향(310)은 공간상의 작업면(400)에 수직하는 방향으로 설정되었으며, 사용자의 교시는 도 2에 도시된 바와 같이 첫 번째 관절(211)을 도시된 방향(330)으로, 두 번째 관절(212)을 도시된 방향(320)으로 회전시키는 조작을 포함한다고 가정한다. 또한 로봇 교시 장치(100)는 교시에 따라 세 개의 관절(211, 212, 213)을 구동한 상태라고 가정한다.
전술한 바와 같이 본 발명의 일 실시예에 따른 로봇 교시 장치(100)는 사용자의 교시에 따라 말단(226)이 기준 방향(310)을 향하도록 하는 나머지 관절(214, 215, 216)들의 각도를 산출하고, 산출된 각도에 따라 나머지 관절(214, 215, 216)들을 동작시킬 수 있다. 이에 따라 말단(226)이 향하는 방향(310a)은 최초 설정된 기준 방향(310)과 동일한 방향으로, 작업면(400)에 수직한 방향일 수 있다.
다시 종래기술에 따른 로봇(200)의 교시 후 말단(226)의 방향(310b)을 설명하는 도 4를 참조하여 설명한다. 설명의 편의를 위하여, 도 2에서와 마찬가지로 기준 방향(310)은 공간상의 작업면(400)에 수직하는 방향으로 설정되었으며, 사용자의 교시는 도 2에 도시된 바와 같이 첫 번째 관절(211)을 도시된 방향(330)으로, 두 번째 관절(212)을 도시된 방향(320)으로 회전시키는 조작을 포함한다고 가정한다. 또한 로봇 교시 장치(100)는 교시에 따라 세 개의 관절(211 내지 213)을 구동한 상태라고 가정한다.
로봇 교시 장치(100)가 사용자의 교시에 나머지 관절(214 내지 216)들의 각도를 산출하지 않거나, 이에 따라 나머지 관절(214 내지 216)들을 동작시키지 않는 경우 도시된 바와 같이 말단(226)이 향하는 방향(310b)은 최초 설정한 기준 방향(310)과 상이한 방향으로, 작업면(400)에 수직한 방향이 아닐 수 있다.
이와 같이 종래기술에 따르면 사용자의 교시에 따라 로봇(200)의 말단(226)이 소정의 요구 조건(가령 특정 방향을 향하는 조건)을 만족시키기 어려운 문제점이 있었다.
나아가 모든 관절(211 내지 216)에 대한 사용자의 교시가 가능하여, 사용자가 말단(226)이 향하는 방향을 작업면(400)에 수직한 방향으로 조작하였다고 하더라고 조작된 상태가 정확하게 작업면(400)에 수직한 방향인지 여부를 확인할 수 없을 뿐만 아니라, 일부 관절의 각도 수정 등에 의해서 말단이 정렬된 방향이 쉽게 흐트러질 수 있는 문제점이 있었다.
본 발명은 다관절 로봇의 일부 관절에 대한 교시가 가능하도록 제어하고, 나머지 관절은 소정의 요구 조건을 만족시키도록 제어함으로써 상기와 같은 문제점을 해결할 수 있다.
이때 교시가 가능한 관절은 적어도 1개 이상일 수 있다. 한편 소정의 요구 조건을 만족시키도록 동작하는 관절은 적어도 3개 이상일 수 있으며, 복수의 관절 중 가장 말단에 근접하고 연속하는 관절일 수 있다.
한편 본 발명의 일 실시예에 따른 로봇(200)의 말단(226)에는 로봇(200)의 목적 및/또는 용도에 따른 툴(Tool)이 부착될 수 있다. 가령 말단(226)에 부착되는 툴은 작업물에 대한 영상을 획득하는 영상획득 장치일 수 있다. 이러한 경우 로봇(200)은 작업물의 조립 상태 등을 파악하기 위한 영상 획득의 목적으로 사용되는 것일 수 있다.
한편 상술한 바와 같은 방법은, 로봇(200)의 캘리브레이션(Calibration)을 위해 사용될 수도 있다. 가령 로봇(200)의 말단을 캘리브레이션을 위한 보드상의 복수의 지점에 위치시킨 뒤, 해당 지점에서의 각 관절의 각도를 확인함으로써 로봇(200)의 동작 오차 등을 확인할 수도 있다. 다만 이는 예시적인 것으로 본 발명의 사상이 이에 한정되는 것은 아니다.
본 발명의 실시예에 따른 로봇의 교시 방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
본 발명은 첨부된 도면에 도시된 일 실시예를 참고로 설명되었으나, 이는 예시적인 것에 불과하며, 당해 기술분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 수 있을 것이다.
100: 로봇 교시 장치
110: 제어부
120: 디스플레이부
130: 입력부
200: 로봇
211, 212, 213, 214,215,216: 관절
221, 222, 223, 224,225,226: 파트
310: 기준 방향

Claims (20)

  1. 말단이 향하는 방향을 일정하게 유지하는 N(N은 자연수)개의 관절을 포함하는 로봇의 교시(Teaching)방법에 있어서,
    상기 말단이 향하고자 하는 기준 방향을 획득하는 단계;
    상기 로봇에 대한 사용자의 교시와 대응되도록 상기 N개의 관절 중 M(M은 자연수, N>M)개의 관절의 각도를 산출하는 단계; 및
    상기 M개의 관절의 각도에 기초하여, 상기 말단이 상기 기준 방향을 향하도록 하는 나머지 관절들의 각도를 산출하는 단계;를 포함하고,
    상기 나머지 관절들은 상기 N개의 관절 중 상기 M개의 관절을 제외한 나머지인, 로봇의 교시 방법.
  2. 제1 항에 있어서
    상기 교시는 상기 로봇에 대한 사용자의 물리적인 조작에 의해 수행되고,
    상기 M개의 관절의 각도를 산출하는 단계는
    상기 로봇에 대한 사용자의 물리적인 조작에 따라 상기 M개의 관절을 상기 M개의 관절의 각도에 대응되도록 구동하는 단계;를 포함하는, 로봇의 교시 방법.
  3. 제1 항에 있어서
    상기 교시는 상기 M개의 관절 중 적어도 하나의 관절에 대한 제어신호에 의해 수행되고,
    상기 제어신호는 사용자의 입력부의 조작에 의해 생성되고,
    상기 M개의 관절의 각도를 산출하는 단계는
    상기 M개의 관절 중 적어도 하나의 관절에 대한 제어신호에 따라 상기 M개의 관절 중 적어도 하나의 관절을 구동하는 단계;를 포함하는, 로봇의 교시 방법.
  4. 제1 항에 있어서
    상기 나머지 관절들의 각도를 산출하는 단계는
    상기 산출된 나머지 관절들의 각도에 기초하여 상기 나머지 관절들을 구동하는 단계;를 포함하는, 로봇의 교시 방법.
  5. 제1 항에 있어서
    상기 나머지 관절은
    상기 N개의 관절 중 상기 말단에 가장 근접하고 연속하는 관절인, 로봇의 교시 방법.
  6. 제5 항에 있어서
    상기 N은 6이고, 상기 M은 3인, 로봇의 교시 방법.
  7. 제1 항에 있어서
    상기 기준 방향은 상기 로봇의 작업 면(Plane)과 직교하는 방향인, 로봇의 교시 방법.
  8. 컴퓨터를 이용하여 제1항 내지 제7항 중 어느 한 항의 방법을 실행하기 위하여 매체에 저장된 컴퓨터 프로그램.
  9. 말단이 향하는 방향을 일정하게 유지하는 N(N은 자연수)개의 관절을 포함하는 로봇의 교시(Teaching)장치에 있어서,
    상기 장치는 제어부를 포함하고,
    상기 제어부는
    상기 말단이 향하고자 하는 기준 방향을 획득하고,
    상기 로봇에 대한 사용자의 교시와 대응되도록 상기 N개의 관절 중 M(M은 자연수, N>M)개의 관절의 각도를 산출하고,
    상기 M개의 관절의 각도에 기초하여, 상기 말단이 상기 기준 방향을 향하도록 하는 나머지 관절들의 각도를 산출하고,
    상기 나머지 관절들은 상기 N개의 관절 중 상기 M개의 관절을 제외한 나머지인, 로봇의 교시 장치.
  10. 제9 항에 있어서
    상기 교시는 상기 로봇에 대한 사용자의 물리적인 조작에 의해 수행되고,
    상기 제어부는
    상기 로봇에 대한 사용자의 물리적인 조작에 따라 상기 M개의 관절을 상기 M개의 관절의 각도에 대응되도록 구동하는, 로봇의 교시 장치.
  11. 제9 항에 있어서
    상기 교시는 상기 M개의 관절 중 적어도 하나의 관절에 대한 제어신호에 의해 수행되고,
    상기 제어신호는 사용자의 입력부의 조작에 의해 생성되고,
    상기 제어부는
    상기 M개의 관절 중 적어도 하나의 관절에 대한 제어신호에 따라 상기 M개의 관절 중 적어도 하나의 관절을 구동하는, 로봇의 교시 장치.
  12. 제9 항에 있어서
    상기 제어부는
    상기 산출된 나머지 관절들의 각도에 기초하여 상기 나머지 관절들을 구동하는, 로봇의 교시 장치.
  13. 제9 항에 있어서
    상기 나머지 관절은
    상기 N개의 관절 중 상기 말단에 가장 근접하고 연속하는 관절인, 로봇의 교시 장치.
  14. 제13 항에 있어서
    상기 N은 6이고, 상기 M은 3인, 로봇의 교시 장치.
  15. 제1 항에 있어서
    상기 기준 방향은 상기 로봇의 작업 면(Plane)과 직교하는 방향인, 로봇의 교시 장치.
  16. 교시간에 로봇의 말단이 향하는 방향을 일정하게 유지하도록 하는 로봇의 교시(Teaching) 시스템에 있어서,
    N(N은 자연수)개의 관절을 포함하는 로봇; 및
    상기 로봇의 말단이 향하는 방향을 일정하게 유지하도록 상기 로봇을 제어하는 로봇 교시 장치;를 포함하고,
    상기 로봇 교시 장치는
    상기 로봇의 말단이 향하고자 하는 기준 방향을 획득하고,
    상기 로봇에 대한 사용자의 교시와 대응되도록 상기 N개의 관절 중 M(M은 자연수, N>M)개의 관절의 각도를 산출하고,
    상기 M개의 관절의 각도에 기초하여, 상기 말단이 상기 기준 방향을 향하도록 하는 나머지 관절들의 각도를 산출하고,
    상기 나머지 관절들은 상기 N개의 관절 중 상기 M개의 관절을 제외한 나머지인, 로봇의 교시 시스템.
  17. 제16 항에 있어서
    상기 교시는 상기 로봇에 대한 사용자의 물리적인 조작에 의해 수행되고,
    상기 로봇 교시 장치는
    상기 로봇에 대한 사용자의 물리적인 조작에 따라 상기 M개의 관절을 상기 M개의 관절의 각도에 대응되도록 구동하는, 로봇의 교시 시스템.
  18. 제16 항에 있어서
    상기 교시는 상기 M개의 관절 중 적어도 하나의 관절에 대한 제어신호에 의해 수행되고,
    상기 제어신호는 사용자의 상기 로봇 교시 장치의 입력부의 조작에 의해 생성되고,
    상기 로봇 교시 장치는
    상기 M개의 관절 중 적어도 하나의 관절에 대한 제어신호에 따라 상기 M개의 관절 중 적어도 하나의 관절을 구동하는, 로봇의 교시 시스템.
  19. 제16 항에 있어서
    상기 로봇 교시 장치는
    상기 산출된 나머지 관절들의 각도에 기초하여 상기 나머지 관절들을 구동하는, 로봇의 교시 시스템.
  20. 제16 항에 있어서
    상기 나머지 관절은
    상기 N개의 관절 중 상기 말단에 가장 근접하고 연속하는 관절인, 로봇의 교시 시스템.
KR1020170105511A 2017-08-21 2017-08-21 로봇의 교시 장치, 방법 및 시스템 KR102474838B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020170105511A KR102474838B1 (ko) 2017-08-21 2017-08-21 로봇의 교시 장치, 방법 및 시스템
CN201780001646.3A CN109699177A (zh) 2017-08-21 2017-11-08 机器人的示教装置、方法以及系统
EP17922778.0A EP3674039A4 (en) 2017-08-21 2017-11-08 DEVICE, METHOD AND SYSTEM FOR TEACHING A ROBOT
PCT/KR2017/012595 WO2019039654A1 (ko) 2017-08-21 2017-11-08 로봇의 교시 장치, 방법 및 시스템
US16/797,151 US20200189094A1 (en) 2017-08-21 2020-02-21 Device, method and system for teaching robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170105511A KR102474838B1 (ko) 2017-08-21 2017-08-21 로봇의 교시 장치, 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20190020484A true KR20190020484A (ko) 2019-03-04
KR102474838B1 KR102474838B1 (ko) 2022-12-07

Family

ID=65438998

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170105511A KR102474838B1 (ko) 2017-08-21 2017-08-21 로봇의 교시 장치, 방법 및 시스템

Country Status (5)

Country Link
US (1) US20200189094A1 (ko)
EP (1) EP3674039A4 (ko)
KR (1) KR102474838B1 (ko)
CN (1) CN109699177A (ko)
WO (1) WO2019039654A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112967559A (zh) * 2021-03-29 2021-06-15 北京航空航天大学 一种基于虚拟装配环境的装配技能直接生成方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1177567A (ja) * 1997-09-09 1999-03-23 Nippon Telegr & Teleph Corp <Ntt> ロボットマニピュレータの制御方法及び装置
JP2009050949A (ja) * 2007-08-27 2009-03-12 Ntn Corp ロボットアームの軌道教示方法および軌道教示装置
JP2010142909A (ja) * 2008-12-19 2010-07-01 Yaskawa Electric Corp ロボットの制御装置
KR20140076248A (ko) * 2012-12-12 2014-06-20 현대중공업 주식회사 로봇의 손목 축 움직임을 이용한 툴 보정 방법

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05337860A (ja) * 1992-06-05 1993-12-21 Toyota Central Res & Dev Lab Inc ロボットハンドの教示装置およびロボットハンド
KR100449429B1 (ko) * 1995-09-14 2004-12-13 가부시키가이샤 야스가와덴끼 로봇의교시장치
JP2000006067A (ja) * 1998-06-23 2000-01-11 Nippon Telegr & Teleph Corp <Ntt> マニピュレータ用教示データ作成方法及び装置並びにプログラムを記録した記録媒体
JP2000015593A (ja) * 1998-06-30 2000-01-18 Toshiba Corp マニピュレータ軌道生成装置及びマニピュレータ軌道生成プログラムを記録した記録媒体
US6385508B1 (en) * 2000-10-31 2002-05-07 Fanuc Robotics North America, Inc. Lead-through teach handle assembly and method of teaching a robot assembly
ATE401170T1 (de) * 2004-10-25 2008-08-15 Univ Dayton Verfahren und system zum ermöglichen von erhöhter genauigkeit bei mehrfachverbundenen robotern durch berechnung der kinematischen robotermodellparameter
JP5701055B2 (ja) * 2010-12-28 2015-04-15 川崎重工業株式会社 7軸多関節ロボットの制御方法、制御プログラム及びロボット制御装置
CN102528802B (zh) * 2010-12-31 2014-12-03 北京中科广视科技有限公司 九自由度机器人的运动驱动方法
CN103492133B (zh) * 2011-04-19 2016-04-13 Abb研究有限公司 具有运动冗余臂的工业机器人和用于控制该机器人的方法
DE102013222456A1 (de) * 2013-11-05 2015-05-07 Kuka Laboratories Gmbh Verfahren zum Programmieren von Bewegungsabläufen eines redundanten Industrieroboters und zugehöriger Industrieroboter

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1177567A (ja) * 1997-09-09 1999-03-23 Nippon Telegr & Teleph Corp <Ntt> ロボットマニピュレータの制御方法及び装置
JP2009050949A (ja) * 2007-08-27 2009-03-12 Ntn Corp ロボットアームの軌道教示方法および軌道教示装置
JP2010142909A (ja) * 2008-12-19 2010-07-01 Yaskawa Electric Corp ロボットの制御装置
KR20140076248A (ko) * 2012-12-12 2014-06-20 현대중공업 주식회사 로봇의 손목 축 움직임을 이용한 툴 보정 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112967559A (zh) * 2021-03-29 2021-06-15 北京航空航天大学 一种基于虚拟装配环境的装配技能直接生成方法

Also Published As

Publication number Publication date
EP3674039A4 (en) 2021-05-26
WO2019039654A1 (ko) 2019-02-28
EP3674039A1 (en) 2020-07-01
CN109699177A (zh) 2019-04-30
KR102474838B1 (ko) 2022-12-07
US20200189094A1 (en) 2020-06-18

Similar Documents

Publication Publication Date Title
JP6924145B2 (ja) ロボット教示方法及びロボットアーム制御装置
US11197730B2 (en) Manipulator system
US9221176B2 (en) Robot system and method for controlling the same
TWI630081B (zh) Direct teaching method of robot
US11027428B2 (en) Simulation apparatus and robot control apparatus
KR101498835B1 (ko) 7축 다관절 로봇의 제어방법, 제어 프로그램 및 로봇 제어장치
JP2011031346A (ja) ロボットのツール先端点の位置の計測装置および計測方法
JP2013184236A (ja) ロボットのキャリブレーション方法及びキャリブレーション装置
US20190022864A1 (en) Robot control device, robot system, and simulation device
KR102474838B1 (ko) 로봇의 교시 장치, 방법 및 시스템
US10377041B2 (en) Apparatus for and method of setting boundary plane
KR101205363B1 (ko) 6자유도 제어기를 이용한 4자유도 로봇 제어방법 및 제어장치
KR102543213B1 (ko) 로봇의 좌표계 교정 방법
KR20190029284A (ko) 로봇의 제어 장치, 방법 및 시스템
KR20200131670A (ko) 로봇의 좌표계를 보정하는 방법
Maťuga Control and positioning of robotic arm on CNC cutting machines and their applications in industry
WO2023277095A1 (ja) 補正システム及び教示データの補正方法
US20210146542A1 (en) Control method for robot system
JPH0487794A (ja) 遠隔ハンドリング装置
JPH04109311A (ja) 多関節ロボットの位置補正方法

Legal Events

Date Code Title Description
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E90F Notification of reason for final refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)