KR102658278B1 - 이동형 로봇 및 그것의 로봇 암 정렬 방법 - Google Patents

이동형 로봇 및 그것의 로봇 암 정렬 방법 Download PDF

Info

Publication number
KR102658278B1
KR102658278B1 KR1020190020127A KR20190020127A KR102658278B1 KR 102658278 B1 KR102658278 B1 KR 102658278B1 KR 1020190020127 A KR1020190020127 A KR 1020190020127A KR 20190020127 A KR20190020127 A KR 20190020127A KR 102658278 B1 KR102658278 B1 KR 102658278B1
Authority
KR
South Korea
Prior art keywords
posture
robot
work area
rotation matrix
tool
Prior art date
Application number
KR1020190020127A
Other languages
English (en)
Other versions
KR20200101796A (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 KR1020190020127A priority Critical patent/KR102658278B1/ko
Priority to PCT/KR2020/002290 priority patent/WO2020171527A1/ko
Publication of KR20200101796A publication Critical patent/KR20200101796A/ko
Application granted granted Critical
Publication of KR102658278B1 publication Critical patent/KR102658278B1/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/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/021Optical sensing devices
    • B25J19/023Optical sensing devices including video camera means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/1607Calculation of inertia, jacobian matrixes and inverses
    • 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

Landscapes

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

Abstract

공구를 이용하여 작업 영역에 지정된 작업을 수행하는 이동형 로봇에 있어서, 상기 공구와 연결되는 로봇 선단, 상기 로봇 선단에 설치되며, 고정 좌표계에 기반하여 상기 로봇 선단의 현재 자세 정보를 측정하는 제1 자세 측정 센서, 상기 현재 자세 정보에 기초하여 상기 로봇 선단의 제1 회전 행렬을 연산하는 자세 연산 장치, 상기 제1 회전 행렬 및 상기 작업 영역에 대응하는 제2 회전 행렬의 차이에 기초하여 제3 회전 행렬을 연산하고, 상기 제3 회전 행렬을 상기 로봇 선단을 제어하기 위한 로봇 각도 정보로 변환하는 자세 보정 연산 장치, 및 상기 로봇 각도 정보에 기초하여 상기 로봇 선단과 상기 작업 영역을 정렬하는 로봇 제어기를 포함하는 이동형 로봇이 개시된다. 이 외에도 명세서를 통해 파악되는 다양한 실시 예가 가능하다.

Description

이동형 로봇 및 그것의 로봇 암 정렬 방법{Mobile robot and method of aligning robot arm thereof}
본 문서에서 개시되는 실시 예들은, 이동형 로봇의 로봇 선단에 연결된 공구를 작업 영역에 정렬하는 기술과 관련된다.
최근 산업 현장에서 생산성 향상, 인력 감소, 품질 향상 등을 위해 로봇 매니퓰레이터를 이용한 공장 자동화가 빠르게 확산되고 있는 추세이다. 일반적인 산업용 로봇 시스템은 로봇의 기저부를 고정시켜서 한정된 공간에서만 사용하는데 반하여, 이동형 로봇은 다수의 작업 공간에서 작업을 수행할 수 있는 특징이 있다. 이동형 로봇은 다른 작업 공간으로 이동할 때마다 로봇 암의 정렬 상태가 달라지기 때문에 매번 작업 공간에 대한 확인 및 정렬 과정이 필요하다.
일반적으로 이동형 로봇은 로봇 암의 종단에 위치한 카메라를 이용하여 로봇 암의 종단에 연결될 공구와 작업 영역을 정렬을 수행할 수 있다. 이동형 로봇은 상기 카메라를 통해 작업 공간에 위치한 특정 패턴(예: 시각적 마커)을 인식하거나 사전에 알고 있는 대상 물체를 매칭하여 상기 공구와 상기 작업 영역 사이의 자세 정렬을 수행할 수 있다. 다만, 이러한 카메라를 이용한 자세 정렬 방법은 정밀한 자세 정렬을 위해서 고해상도 카메라 요구되어 비용 증가가 수반되며, 자세 정렬 과정에서 다수의 좌표계 변환이 동반되고 그 과정에서 오차 발생의 확률이 높아지는 단점이 있다.
본 발명의 다양한 실시 예들은 다수의 작업 영역 간에 작업을 수행하는 이동형 로봇에 있어서, 공구가 결합되는 로봇 암의 종단에 부착된 제1 자세 측정 센서 및 작업 영역에 부착된 제2 자세 측정 센서를 통해 고정 좌표계(예: 중력 좌표계)에 기반하여 상기 공구의 자세 및 상기 작업 영역의 자세를 정렬하는 이동형 로봇을 제공하고자 한다.
본 문서에 개시되는 일 실시 예에 따른 공구를 이용하여 작업 영역에 지정된 작업을 수행하는 이동형 로봇은, 상기 공구와 연결되는 로봇 선단, 상기 로봇 선단에 설치되며, 고정 좌표계에 기반하여 상기 로봇 선단의 현재 자세 정보를 측정하는 제1 자세 측정 센서, 상기 현재 자세 정보에 기초하여 상기 로봇 선단의 제1 회전 행렬을 연산하는 자세 연산 장치, 상기 제1 회전 행렬 및 상기 작업 영역에 대응하는 제2 회전 행렬의 차이에 기초하여 제3 회전 행렬을 연산하고, 상기 제3 회전 행렬을 상기 로봇 선단을 제어하기 위한 로봇 각도 정보로 변환하는 자세 보정 연산 장치, 및 상기 로봇 각도 정보에 기초하여 상기 로봇 선단과 상기 작업 영역을 정렬하는 로봇 제어기를 포함할 수 있다.
또한, 본 문서에 개시되는 일 실시 예에 따른 로봇 선단에 연결된 공구를 이용하여 적어도 하나의 작업 영역 중 선택된 작업 영역에 지정된 작업을 수행하는 이동형 로봇의 자세 정렬 방법은, 상기 이동형 로봇을 상기 선택된 작업 영역으로 이동시키고, 상기 공구를 측정 자세로 이동시키는 동작, 상기 로봇 선단에 설치된 제1 자세 측정 센서를 이용하여 현재의 공구 자세를 측정하는 동작, 목표 자세 저장 장치로부터 상기 선택된 작업 영역에 대한 목표 자세를 확인하는 동작, 상기 현재의 공구 자세에 기초하여 자세 연산 장치를 통해 제1 회전 행렬을 연산하는 동작, 상기 제1 회전 행렬 및 상기 목표 자세에 대응하는 제2 회전 행렬의 차이에 기초하여 자세 보정 연산 장치를 통해 제3 회전 행렬을 연산하는 동작, 상기 자세 보정 연산 장치를 통해 상기 제3 회전 행렬을 변환하여 상기 로봇 선단을 제어하기 위한 로봇 회전 각도를 생성하는 동작, 상기 로봇 회전 각도에 기초하여 상기 로봇 선단의 위치를 변경하여 상기 공구와 상기 선택된 작업 영역을 정렬하는 동작을 포함할 수 있다.
본 문서에 개시되는 실시 예들에 따르면, 고정 좌표계 기반으로 공구와 작업 영역을 정렬하여 좌표계 변환에 따른 오류를 방지하고 정밀한 자세 정렬이 가능하다.
본 문서에 개시되는 실시 예들에 따르면, 고성능 카메라를 대신하여 자세 측정 센서를 사용하여 자세 정렬 비용을 절감할 수 있다.
이 외에, 본 문서를 통해 직접적 또는 간접적으로 파악되는 다양한 효과들이 제공될 수 있다.
도 1은 본 발명의 일 실시 예에 따른 이동형 로봇을 나타내는 도면이다.
도 2, 도 1의 이동형 로봇이 자세를 정렬하는 방법의 일 예를 나타내는 블록도이다.
도 3은, 도 2의 제1 자세 측정 센서의 일 예를 나타내는 블록도이다.
도 4는 본 발명의 일 실시 예에 따른 이동형 로봇이 복수의 작업 영역을 이동하는 방법을 나타내는 도면이다.
도 5는 본 발명의 일 실시 예에 따른 이동형 로봇의 공구 자세를 정렬하는 방법을 나타내는 순서도이다.
도 6은 본 발명의 일 실시 예에 따른 이동형 로봇의 공구 자세에 대한 목표 자세를 설정하는 방법을 나타내는 순서도이다.
도 7은, 도 6에서 이동형 로봇의 목표 자세 설정 시 공구와 작업 영역의 결합 상태의 일 예를 나타내는 도면이다.
도 8은 본 발명의 다양한 실시 예에 따른 이동형 로봇의 공구 자세에 대한 목표 자세를 설정하는 방법을 나타내는 순서도이다.
도 9는, 도 8에서 이동형 로봇의 목표 자세 설정 시 작업 영역의 일 예를 나타내는 도면이다.
도면의 설명과 관련하여, 동일 또는 유사한 구성요소에 대해서는 동일 또는 유사한 참조 부호가 사용될 수 있다.
이하, 본 발명의 다양한 실시 예가 첨부된 도면을 참조하여 기재된다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 실시 예의 다양한 변경(modification), 균등물(equivalent), 및/또는 대체물(alternative)을 포함하는 것으로 이해되어야 한다.
도 1은 본 발명의 일 실시 예에 따른 이동형 로봇을 나타내는 도면이다. 도 2, 도 1의 이동형 로봇이 자세를 정렬하는 방법의 일 예를 나타내는 블록도이다.
도 1 및 도 2를 참조하면, 이동형 로봇(100)은 로봇 제어기(101), 로봇 기저부(110), 로봇 암(120), 로봇 선단(130), 공구(140), 카메라(150), 제1 자세 측정 센서(160), 자세 연산 장치(170), 목표 자세 저장 장치(180) 및 자세 보정 연산 장치(190)를 포함할 수 있다. 작업 대상(200)은 작업대(210), 작업 영역(240), 자세 정렬 패턴(250)(예: 마커) 및 제2 자세 측정 센서(260)를 포함할 수 있다.
일 실시 예에 따르면, 이동형 로봇(100)은 적어도 하나의 작업 대상(200)으로 이동하여 미리 정해진 작업을 수행할 수 있다. 이동형 로봇(100)은 작업 대상(200)으로 이동하여 미리 정해진 작업을 수행하기 전에 로봇 선단(130)에 연결된 공구(140)와 작업 대상(200)의 작업 영역(240)을 정렬하는 동작을 수행할 수 있다.
일 실시 예에 따르면, 이동형 로봇(100)은 로봇 암(120)을 측정 자세로 이동시킬 수 있다. 예를 들면, 이동형 로봇(100)은 선택된 작업 대상(200)으로 이동할 수 있다. 이동형 로봇(100)은 카메라(150)를 이용하여 로봇 암(120)을 측정 자세로 이동시킬 수 있다. 로봇 제어기(101)는 카메라(150)를 통해 자세 정렬 패턴(250)을 감지할 수 있다. 예컨대, 로봇 암(120)은 적어도 하나의 관절을 포함할 수 있다. 로봇 제어기(101)는 로봇 기저부(110)의 좌표계, 로봇 암(120)의 적어도 하나의 관절의 좌표계, 카메라(150)의 좌표계 및 자세 정렬 패턴(250)의 좌표계를 이용하여 로봇 선단(130)을 측정 자세로 이동시킬 수 있다. 로봇 제어기(101)는 Hand-Eye 캘리브레이션 또는 카메라 캘리브레이션을 통해 좌표계 변환을 수행하고, 좌표계 변환 결과를 이용하여 로봇 선단(130)을 대략적인 측정 자세로 이동시킬 수 있다.
일 실시 예에 따르면, 측정 자세에서, 이동형 로봇(100)은 로봇 선단(130)에 연결된 공구(140)와 작업 영역(240)에 대하여 정밀 자세 정렬 동작을 수행할 수 있다. 예를 들면, 이동형 로봇(100)은 고정 좌표계(예: 중력 좌표계)를 기반으로 현재의 공구 자세와 선택된 작업 대상(200)의 작업 영역(240)에 대한 목표 자세를 비교하여 공구(140)와 작업 영역(240)을 정렬할 수 있다.
일 실시 예에 따르면, 이동형 로봇(100)은 현재의 공구 자세(예: 로봇 선단(130)의 자세)를 측정할 수 있다. 예를 들면, 제1 자세 측정 센서(160)는 현재의 공구 자세에 대응하는 중력 방향 및 지자기 방향을 측정할 수 있다. 제1 자세 측정 센서(160)는 상기 중력 방향 및 상기 지자기 방향에 기초하여 현재의 공구 자세에 대응하는 오일러 각도 정보(예: roll, pitch, yaw)를 출력할 수 있다. 다양한 실시 예로서, 제1 자세 측정 센서(160)는 로봇 선단(130)에 설치(또는 탈부착)될 수 있다. 제1 자세 측정 센서(160)는 로봇 선단(130)에 탈부착되도록 하는 결합 부재(예: 걸쇠, 접착층, 결합용 홈)를 포함할 수 있다.
일 실시 예에 따르면, 자세 연산 장치(170)는 현재의 공구 자세에 대응하는 회전 행렬을 연산할 수 있다. 예를 들면, 자세 연산 장치(170)는 제1 자세 측정 센서(160)로부터 로봇 선단(130)의 오일러 각도 정보를 수신할 수 있다. 자세 연산 장치(170)는 로봇 선단(130)의 오일러 각도 정보를 이용하여 로봇 선단(130)의 자세에 대응하는 회전 행렬(이하, 현재 회전 행렬)을 연산할 수 있다. 예컨대, Yaw 각도(α) 정보에 대한 회전 행렬은 수학식 1과 같이 연산할 수 있다.
Pitch 각도(β) 정보에 대한 회전 행렬은 수학식 2와 같이 연산할 수 있다.
Roll 각도(γ) 정보에 대한 회전 행렬은 수학식 3과 같이 연산할 수 있다.
고정 축 기반 Roll-Pitch-Yaw 순서로 회전함을 가정했을 때, 전체 회전 행렬(예: 현재의 공구 자세에 대응하는 회전 행렬)은 수학식 4와 같이 연산할 수 있다.
다양한 실시 예에 따르면, 고정 좌표계에 대하여 제1 자세 측정 센서(160)는 센서 좌표계를 가질 수 있다. 센서 좌표계는 제1 자세 측정 센서(160)의 자세에 따라 고정 좌표계에 대하여 기울어질 수 있다. 자세 연산 장치(170)는 고정 좌표계와 센서 좌표계 사이의 기울어짐에 대응하는 회전 행렬을 연산할 수 있다. 예컨대, 자세 연산 장치(170)는 확률론적인 방법의 하나인 칼만 필터(Kalman filter)를 이용하여 회전 행렬을 연산할 수 있다.
일 실시 예에 따르면, 자세 보정 연산 장치(190)는 현재의 공구 자세에 대응하는 보정 회전 행렬을 연산할 수 있다. 예를 들면, 자세 보정 연산 장치(190)는 자세 연산 장치(170)로부터 현재 회전 행렬을 수신할 수 있다. 자세 보정 연산 장치(190)는 선택된 작업 대상(200)의 작업 영역(240)에 대한 목표 자세를 확인할 수 있다. 자세 보정 연산 장치(190)는 목표 자세 저장 장치(180)로부터 목표 자세에 대응하는 회전 행렬(이하, 목표 회전 행렬)을 수신할 수 있다. 자세 보정 연산 장치(190)는 현재 회전 행렬(R0) 및 목표 회전 행렬(Rd)에 기초하여 보정 회전 행렬(Rc)을 수학식 5와 같이 연산할 수 있다.
다양한 실시 예에 따르면, 작업 장소 내에 복수의 작업 대상들이 존재하는 경우, 이동형 로봇(100)은 작업 대상들 각각에 대한 목표 자세를 목표 자세 저장 장치(180)에 미리 저장할 수 있다.
일 실시 예에 따르면, 자세 보정 연산 장치(190)는 로봇 암(120)의 자세 보정을 위한 로봇 회전 각도를 생성할 수 있다. 예를 들면, 자세 보정 연산 장치(190)는 보정 회전 행렬을 로봇 암(120) 및 로봇 선단(130)을 제어하기 위한 로봇 회전 각도(예: 3축 각도 값)로 변환할 수 있다. 예컨대, 임의의 회전 행렬에 해당하는 오일러 각도는 수학식 6과 같이 연산할 수 있다.
일 실시 예에 따르면, 로봇 제어기(101)는 로봇 회전 각도에 기초하여 로봇 암(120)을 구동할 수 있다. 예를 들면, 로봇 제어기(101)는 로봇 회전 각도에 기초하여 로봇 선단(130)을 고정 좌표계에 기반한 3축 방향으로 이동할 수 있다. 공구(140)는 지정된 방향에 따라 로봇 선단(130)에 연결될 수 있다. 공구(140)는 로봇 선단(130)의 이동에 따라 동일하게 이동할 수 있다. 따라서, 공구(140)는 고정 좌표계에서 로봇 선단(130)과 동일한 좌표값을 가질 수 있고, 로봇 선단(130)이 작업 영역(240)에 정렬되면, 공구(140)도 로봇 선단(130)과 동일하게 작업 영역(240)에 정렬될 수 있다.
일 실시 예에 따르면, 이동형 로봇(100)은 공구 자세 정렬이 완료되었는지 판단할 수 있다. 예를 들면, 자세 연산 장치(170)는 자세 정렬 동작이 수행된 후 측정된 오일러 각도 정보를 제1 자세 측정 장치(160)로부터 수신할 수 있다. 자세 연산 장치(170)는 목표 자세 저장 장치(180)로부터 작업 영역(240)의 목표 자세에 대응하는 오일러 각도 정보를 수신할 수 있다. 자세 연산 장치(170)는 자세 정렬 동작이 수행된 후 측정된 오일러 각도 정보와 목표 자세에 대응하는 오일러 각도 정보의 차이(이하, 자세 오차)를 기준 오차와 비교할 수 있다. 상기 자세 오차가 기준 오차보다 작은 경우, 자세 연산 장치(170)는 공구(140)의 자세 정렬이 완료되었음을 로봇 제어기(101)로 통보할 수 있다. 상기 자세 오차가 기준 오차보다 큰 경우, 이동형 로봇(100)은 공구(140)의 자세 정렬 동작을 반복하여 수행할 수 있다.
다양한 실시 예에 따르면, 이동형 로봇(100)은 사전에 목표 자세를 설정할 수 있다. 예를 들면, 로봇 선단(130)에 연결된 공구(140)가 작업 대상(200)의 작업 영역(240)에 결합된 후, 자세 연산 장치(170)는 제1 자세 측정 센서(160)를 이용해 측정된 로봇 선단(130)(또는 공구(140))의 자세를 작업 영역(240)에 대한 목표 자세로 설정할 수 있다. 또는 자세 연산 장치(170)는 작업 영역(240)에 설치된 제2 자세 측정 센서(260)를 이용해 측정된 작업 영역(240)의 자세를 작업 영역(240)에 대한 목표 자세로 설정할 수 있다. 예컨대, 제2 자세 측정 센서(260)는 작업 영역(240)에 탈부착될 수 있다. 제2 자세 측정 센서(260)는 작업 영역(240)에 탈부착되도록 하는 결합 부재(예: 걸쇠, 접착층, 결합용 홈)를 포함할 수 있다. 목표 자세는 고정 좌표계에 기반하여 오일러 각도 정보로 표현되거나 오일러 각도 정보가 변환된 회전 행렬로 표현될 수 있다. 설정된 목표 자세는 목표 자세 저장 장치(180)에 저장될 수 있다.
도 3은, 도 2의 제1 자세 측정 센서의 일 예를 나타내는 블록도이다.
도 1 및 도 3을 참조하면, 제1 자세 측정 센서(160)는 가속도 센서(161) 및 지자계 센서(162)를 포함할 수 있다. 제1 자세 측정 센서(160)는 로봇 선단(130)에 설치될 수 있다. 작업 영역(240)에 설치되는 제2 자세 측정 센서(260)도 제1 자세 측정 센서(160)와 동일 또는 유사한 구성을 포함할 수 있다.
일 실시 예에 따르면, 가속도 센서(161)는 로봇 선단(130)의 자세에 대응하는 중력 방향을 측정할 수 있다. 지자계 센서(162)는 로봇 선단(130)의 자세에 대응하는 지자기의 방향을 측정할 수 있다. 제1 자세 측정 센서(160)는 상기 중력 방향 및 상기 지자기 방향에 기초하여 로봇 선단(130)의 현재 자세를 고정 좌표계(예: 중력 좌표계)에 기반하여 오일러 각도 정보(예: roll, pitch, yaw)로 출력할 수 있다.
도 4는 본 발명의 일 실시 예에 따른 이동형 로봇이 복수의 작업 영역을 이동하는 방법을 나타내는 도면이다.
도 4를 참조하면, 작업 장소(400)(예: 자동화 공장)는 복수의 작업 대상들(200-1 내지 200-n)을 포함할 수 있다. 이동형 로봇(100)은 작업 대상들(200-1 내지 200-n) 사이를 이동하여 미리 정해진 작업들을 수행할 수 있다.
일 실시 예에 따르면, 이동형 로봇(100)은 작업 대상들(200-1 내지 200-n)의 배치에 대응하는 작업 경로(401)에 기초하여 이동할 수 있다. 작업 대상들(200-1 내지 200-n)에 포함된 작업 영역들이 배치된 위치가 서로 다르거나 이동형 로봇(100)이 이동하는 동안 로봇 선단(예: 로봇 선단(130))의 위치가 변경될 수 있기 때문에, 이동형 로봇(100)은 작업 대상들(200-1 내지 200-n) 중 선택된 작업 대상(예: 도 1의 작업 대상(200)) 앞에 정지한 후 자세 정렬 동작을 수행할 수 있다.
다양한 실시 예에 따르면, 공구(예: 공구(140))를 이용하여 작업 영역(예: 작업 영역(240))에 지정된 작업을 수행하는 이동형 로봇(예: 이동형 로봇(100))은, 상기 공구와 연결되는 로봇 선단(예: 로봇 선단(130)), 상기 로봇 선단에 설치되며, 고정 좌표계에 기반하여 상기 로봇 선단의 현재 자세 정보를 측정하는 제1 자세 측정 센서(예: 제1 자세 측정 센서(160)), 상기 현재 자세 정보에 기초하여 상기 로봇 선단의 제1 회전 행렬을 연산하는 자세 연산 장치(예: 자세 연산 장치(170)), 상기 제1 회전 행렬 및 상기 작업 영역에 대응하는 제2 회전 행렬의 차이에 기초하여 제3 회전 행렬을 연산하고, 상기 제3 회전 행렬을 상기 로봇 선단을 제어하기 위한 로봇 각도 정보로 변환하는 자세 보정 연산 장치(예: 자세 보정 연산 장치(190)), 및 상기 로봇 각도 정보에 기초하여 상기 로봇 선단과 상기 작업 영역을 정렬하는 로봇 제어기(예: 로봇 제어기(101))를 포함할 수 있다.
다양한 실시 예에 따르면, 상기 고정 좌표계는 중력을 기반으로 설정되는 좌표계를 포함할 수 있다.
다양한 실시 예에 따르면, 상기 제2 회전 행렬을 저장하는 목표 자세 저장 장치(예: 목표 자세 저장 장치(180))를 더 포함할 수 있다. 다양한 실시 예에 따르면, 상기 작업 영역은 복수의 작업 영역들 중 선택된 하나를 포함하고, 상기 목표 자세 저장 장치는 상기 복수의 작업 영역들 각각에 대응하는 목표 자세에 대한 데이터를 미리 저장할 수 있다. 다양한 실시 예에 따르면, 상기 자세 연산 장치는 상기 공구가 상기 작업 영역의 일정 범위 이내에 정렬된 상태에서 측정된 상기 제1 자세 측정 센서의 측정값에 기초하여 상기 제2 회전 행렬을 연산하고, 상기 제2 회전 행렬을 상기 목표 자세 저장 장치에 미리 저장할 수 있다.
다양한 실시 예에 따르면, 상기 자세 연산 장치는 상기 작업 영역에 부착된 제2 자세 측정 센서(예: 제2 자세 측정 센서(260))의 측정값에 기초하여 상기 제2 회전 행렬을 연산하고, 상기 제2 회전 행렬을 상기 목표 자세 저장 장치에 미리 저장할 수 있다. 다양한 실시 예에 따르면, 상기 제1 자세 측정 센서 및 상기 제2 자세 측정 센서 각각은 상기 로봇 선단의 중력 방향에 대한 기울어짐을 측정하는 가속도 센서(예: 가속도 센서(161)) 및 지자기의 방향을 측정하는 지자계 센서(예: 지자계 센서(162)) 중 적어도 하나를 포함할 수 있다. 다양한 실시 예에 따르면, 상기 제1 자세 측정 센서 및 상기 제2 자세 측정 센서 각각은 상기 가속도 센서의 측정 결과 및 상기 지자계 센서의 측정 결과에 기초하여 상기 고정 좌표계에서 상기 로봇 선단의 오일러 각도 정보를 생성할 수 있다.
다양한 실시 예에 따르면, 상기 제2 자세 측정 센서는 상기 작업 영역에 탈부착되도록 하는 결합 부재를 포함할 수 있다.
다양한 실시 예에 따르면, 상기 현재 자세 정보는 상기 로봇 선단의 오일러 각도 정보를 포함할 수 있다.
다양한 실시 예에 따르면, 상기 작업 영역에 설치되는 자세 정렬 패턴(예: 자세 정렬 패턴(250))을 감지하는 카메라(예: 카메라(150))를 더 포함하고, 상기 로봇 제어기는 상기 자세 정렬 패턴에 대한 상기 카메라의 감지 결과에 기초하여 상기 로봇 선단을 측정 자세로 이동시킬 수 있다.
도 5는 본 발명의 일 실시 예에 따른 이동형 로봇의 공구 자세를 정렬하는 방법을 나타내는 순서도이다.
도 1, 도 2 및 도 5를 참조하면, 이동형 로봇(100)은 고정 좌표계(예: 중력 좌표계)에 의한 자세를 측정하는 제1 자세 측정 센서(160) 및 제2 자세 측정 센서(260)를 이용하여 로봇 선단(130)에 연결된 공구(140)의 자세를 정렬할 수 있다.
일 실시 예에 따르면, 동작 505에서, 이동형 로봇(100)은 작업 위치로 이동하고, 로봇 암(120)을 제어하여 측정 자세를 취할 수 있다. 예를 들면, 이동형 로봇(100)은 선택된 작업 대상(200)으로 이동할 수 있다. 또한, 이동형 로봇(100)은 카메라(150)와 자세 정렬 패턴(250)을 이용하여 로봇 암(120)이 측정 자세를 취하도록 제어할 수 있다.
일 실시 예에 따르면, 동작 510에서, 이동형 로봇(100)은 현재의 공구 자세를 측정할 수 있다. 예를 들면, 이동형 로봇(100)은 제1 자세 측정 센서(160)를 통해 현재의 공구 자세에 대응하는 오일러 각도 정보를 측정할 수 있다. 제1 자세 측정 센서(160)는 로봇 선단(130)에 부착될 수 있다. 제1 자세 측정 센서(160)는 고정 좌표계에 기반하여 로봇 선단(130)의 오일러 각도 정보를 측정할 수 있다.
일 실시 예에 따르면, 동작 515에서, 이동형 로봇(100)은 현재의(또는 선택된 작업 대상(200)의) 작업 영역(240)에 대한 목표 자세를 확인할 수 있다. 이동형 로봇(100)은 현재의 작업 영역(240)에 대한 목표 자세를 목표 자세 저장 장치(180)에서 확인할 수 있다. 예를 들면, 이동형 로봇(100)은 작업 장소 내의 작업 대상들(예: 도 4의 200-1 내지 200-n) 각각에 대한 목표 자세를 목표 자세 저장 장치(180)에 미리 저장할 수 있다. 이동형 로봇(100)은 로봇 선단(130)에 연결된 공구(140)를 작업 대상(200)의 작업 영역(240)에 결합한 후 제1 자세 측정 센서(160)를 이용해 측정된 로봇 선단(130)(또는 공구(140))의 자세를 작업 영역(240)에 대한 목표 자세로 설정할 수 있다. 또는 이동형 로봇(100)은 작업 영역(240)에 부착된 제2 자세 측정 센서(260)를 이용해 측정된 작업 영역(240)의 자세를 작업 영역(240)에 대한 목표 자세로 설정할 수 있다.
일 실시 예에 따르면, 동작 520에서, 이동형 로봇(100)은 자세 연산 장치(170)를 통해 회전 행렬을 연산할 수 있다. 예를 들면, 자세 연산 장치(170)는 제1 자세 측정 센서(160)로부터 로봇 선단(130)의 오일러 각도 정보를 수신할 수 있다. 자세 연산 장치(170)는 로봇 선단(130)의 오일러 각도 정보를 이용하여 로봇 선단(130)의 자세에 대응하는 회전 행렬(이하, 현재 회전 행렬)을 연산할 수 있다.
일 실시 예에 따르면, 동작 525에서, 이동형 로봇(100)은 자세 보정 연산 장치(190)를 통해 보정 회전 행렬을 연산할 수 있다. 예를 들면, 자세 보정 연산 장치(190)는 자세 연산 장치(170)로부터 현재 회전 행렬을 수신할 수 있다. 자세 보정 연산 장치(190)는 동작 515에서 목표 자세 저장 장치(180)로부터 목표 자세에 대응하는 회전 행렬(이하, 목표 회전 행렬)을 수신할 수 있다. 자세 보정 연산 장치(190)는 현재 회전 행렬 및 목표 회전 행렬에 기초하여 보정 회전 행렬을 연산할 수 있다.
일 실시 예에 따르면, 동작 530에서, 이동형 로봇(100)은 자세 보정 연산 장치(190)를 통해 로봇 암(120)의 자세 보정을 위한 로봇 회전 각도를 생성할 수 있다. 예를 들면, 자세 보정 연산 장치(190)는 보정 회전 행렬을 로봇 암(120) 및 로봇 선단(130)을 제어하기 위한 로봇 회전 각도(예: 3축 각도 값)로 변환할 수 있다.
일 실시 예에 따르면, 동작 535에서, 이동형 로봇(100)은 로봇 회전 각도에 기초하여 로봇 암(120)을 구동할 수 있다. 예를 들면, 로봇 제어기(101)는 로봇 회전 각도에 기초하여 로봇 선단(130)을 고정 좌표계에 기반한 3축 방향으로 이동할 수 있다. 로봇 선단(130)에 연결된 공구(140)는 로봇 선단(130)의 이동에 따라 동일하게 이동할 수 있다.
일 실시 예에 따르면, 동작 540에서, 이동형 로봇(100)은 현재의(예: 동작 515 내지 동작 535가 수행된 이후의 상태) 공구 자세를 측정할 수 있다. 예를 들면, 이동형 로봇(100)은 동작 510과 동일하게 제1 자세 측정 센서(160)를 통해 현재 로봇 선단(130)의 오일러 각도 정보를 측정할 수 있다.
일 실시 예에 따르면, 동작 545에서, 이동형 로봇(100)은 자세 연산 장치(170)를 통해 공구 자세 정렬이 완료되었는지 판단할 수 있다. 예를 들면, 자세 연산 장치(170)는 동작 540에서 측정된 오일러 각도 정보를 제1 자세 측정 장치(160)로부터 수신할 수 있다. 자세 연산 장치(170)는 목표 자세 저장 장치(180)로부터 작업 영역(240)의 목표 자세에 대응하는 오일러 각도 정보를 수신할 수 있다. 자세 연산 장치(170)는 현재의 공구 자세에 대응하는 오일러 각도 정보와 목표 자세에 대응하는 오일러 각도 정보의 차이(이하, 자세 오차)를 기준 오차와 비교할 수 있다. 상기 자세 오차가 기준 오차보다 작은 경우, 자세 연산 장치(170)는 공구(140)의 자세 정렬이 완료되었음을 로봇 제어기(101)로 통보하고, 로봇 제어기(101)는 상기 공구를 상기 작업 영역에 결합할 수 있다. 상기 자세 오차가 기준 오차보다 큰 경우, 이동형 로봇(100)은 동작 510 내지 동작 545를 반복하여 수행할 수 있다.
도 6은 본 발명의 일 실시 예에 따른 이동형 로봇의 공구 자세에 대한 목표 자세를 설정하는 방법을 나타내는 순서도이다. 도 7은, 도 6에서 이동형 로봇의 목표 자세 설정 시 공구와 작업 영역의 결합 상태의 일 예를 나타내는 도면이다.
도 6 및 도 7을 참조하면, 이동형 로봇(100)은 작업 장소(예: 도 4의 작업 장소(400)) 내의 작업 대상들(예: 도 4의 200-1 내지 200-n) 중 선택된 작업 대상(200)으로 이동하여, 로봇 선단(130)에 연결된 공구(140)를 선택된 작업 대상(200)의 작업 영역(240)에 결합한 후, 선택된 작업 영역(240)에 대한 목표 자세를 설정할 수 있다.
일 실시 예에 따르면, 동작 610에서, 이동형 로봇(100)은 로봇 선단(130)에 연결된 공구(140)가 선택된 작업 대상(200)의 작업 영역(240)의 일정 범위 이내에 정렬되도록 공구(140)를 위치시킬 수 있다. 예를 들면, 공구(140)는 토크 센서(701)(예: FT(Force Torque) 센서)를 포함할 수 있다. 공구(140)에 의해 파지된 작업물이 작업 영역(240)에 거치되는 동안, 로봇 제어기(101)는 토크 센서(701)로부터 실시간으로 토크 정보를 수신할 수 있다. 로봇 제어기(101)는 토크 정보에 기초하여 상기 작업물이 작업 영역(240)에 손상없이 거치되도록 공구(140)을 이동시킬 수 있다.
일 실시 예에 따르면, 동작 620에서, 이동형 로봇(100)은 현재의 공구 자세를 측정할 수 있다. 예를 들면, 제1 자세 측정 센서(160)는 로봇 선단(130)에 설치(또는 탈부착)될 수 있다. 제1 자세 측정 센서(160)는 로봇 선단(130)에 탈부착되도록 하는 결합 부재(예: 걸쇠, 접착층, 결합용 홈)를 포함할 수 있다. 공구(140)와 작업 영역(240)이 결합된 상태에서, 이동형 로봇(100)은 제1 자세 측정 센서(160)를 통해 현재의 공구 자세에 대응하는 오일러 각도 정보(예: roll, pitch, yaw)를 측정할 수 있다. 제1 자세 측정 센서(160)는 고정 좌표계에 기반하여 로봇 선단(130)의 오일러 각도 정보를 측정할 수 있다.
일 실시 예에 따르면, 동작 630에서, 이동형 로봇(100)은 측정된 공구 자세를 선택된 작업 영역(240)에 대한 목표 자세로 설정할 수 있다. 예를 들면, 자세 연산 장치(170)는 동작 620에서 측정된 오일러 각도 정보를 제1 자세 측정 센서(160)로부터 수신할 수 있다. 자세 연산 장치(170)는 상기 오일러 각도 정보를 목표 자세로서 목표 자세 저장 장치(180)에 저장할 수 있다. 또한, 자세 연산 장치(170)는 상기 오일러 각도 정보를 이용하여 현재 회전 행렬을 연산할 수 있다. 자세 연산 장치(170)는 상기 현재 회전 행렬을 목표 자세로서 목표 자세 저장 장치(180)에 저장할 수 있다.
일 실시 예에 따르면, 동작 640에서, 이동형 로봇(100)은 작업 장소 내의 모든 작업 대상들의 작업 영역들에 대하여 목표 자세를 설정하였는지 판단할 수 있다. 예를 들면, 모든 작업 영역들에 대하여 목표 자세 설정이 완료된 경우, 이동형 로봇(100)은 목표 자세 설정 동작을 종료할 수 있다. 목표 자세 설정이 완료되지 않은 작업 영역이 존재하는 경우, 이동형 로봇(100)은 동작 650을 수행할 수 있다.
일 실시 예에 따르면, 동작 650에서, 목표 자세 설정이 완료되지 않은 작업 영역이 존재하는 경우, 이동형 로봇(100)은 다음 작업 영역으로 이동할 수 있다. 예를 들면, 이동형 로봇(100)은 다음 작업 영역에 대하여 동작 610 내지 동작 630을 반복하여 수행할 수 있다.
도 8은 본 발명의 다양한 실시 예에 따른 이동형 로봇의 공구 자세에 대한 목표 자세를 설정하는 방법을 나타내는 순서도이다. 도 9는, 도 8에서 이동형 로봇의 목표 자세 설정 시 작업 영역의 일 예를 나타내는 도면이다.
도 6 및 도 7을 참조하면, 작업 장소(예: 도 4의 작업 장소(400)) 내의 작업 대상들(예: 도 4의 200-1 내지 200-n) 중 선택된 작업 대상(200)에 대하여, 이동형 로봇(100)은 선택된 작업 영역(240)에 부착된 제2 자세 측정 센서(260)를 이용하여 선택된 작업 영역(240)에 대한 목표 자세를 설정할 수 있다.
일 실시 예에 따르면, 동작 810에서, 제2 자세 측정 센서(260)는 선택된 작업 대상(200)의 작업 영역(240)에 정렬하여 설치(또는 탈부착)될 수 있다. 예를 들면, 이동형 로봇(100)은 선택된 작업 대상(200)으로 이동하여 선택된 작업 영역(240)에 제2 자세 측정 센서(260)를 부착할 수 있다. 예컨대, 제2 자세 측정 센서(260)는 선택된 작업 영역(240)의 일 측면에 부착될 수 있다. 제2 자세 측정 센서(260)는 선택된 작업 영역(240)에 탈부착되도록 하는 결합 부재(예: 걸쇠, 접착층, 결합용 홈)를 포함할 수 있다. 다양한 실시 예에 따르면, 제2 자세 측정 센서(260)는 사용자에 의해 수동으로 부착될 수 있다.
일 실시 예에 따르면, 동작 820에서, 제2 자세 측정 센서(260)는 선택된 작업 영역(240)의 작업 영역 자세를 측정할 수 있다. 예를 들면, 제2 자세 측정 센서(260)는 선택된 작업 영역(240)의 자세에 대응하는 오일러 각도 정보(예: roll, pitch, yaw)를 측정할 수 있다. 제2 자세 측정 센서(260)는 고정 좌표계에 기반하여 상기 오일러 각도 정보를 측정할 수 있다.
일 실시 예에 따르면, 동작 830에서, 이동형 로봇(100)은 측정된 작업 영역 자세를 선택된 작업 영역(240)에 대한 목표 자세로 설정할 수 있다. 예를 들면, 자세 연산 장치(170)는 동작 820에서 측정된 오일러 각도 정보를 제2 자세 측정 센서(260)로부터 수신할 수 있다. 자세 연산 장치(170)는 상기 오일러 각도 정보를 목표 자세로서 목표 자세 저장 장치(180)에 저장할 수 있다. 또한, 자세 연산 장치(170)는 상기 오일러 각도 정보를 이용하여 현재 회전 행렬을 연산할 수 있다. 자세 연산 장치(170)는 상기 현재 회전 행렬을 목표 자세로서 목표 자세 저장 장치(180)에 저장할 수 있다.
일 실시 예에 따르면, 동작 840에서, 이동형 로봇(100)은 작업 장소(예: 도 4의 작업 장소(400)) 내의 모든 작업 대상들(예: 도 4의 작업 대상들(200-1 내지 200-n))의 작업 영역들에 대하여 목표 자세를 설정하였는지 판단할 수 있다. 예를 들면, 모든 작업 영역들에 대하여 목표 자세 설정이 완료된 경우, 이동형 로봇(100)은 목표 자세 설정 동작을 종료할 수 있다. 목표 자세 설정이 완료되지 않은 작업 영역이 존재하는 경우, 이동형 로봇(100)은 나머지 작업 영역들에 대하여 동작 810 내지 동작 830을 반복하여 수행할 수 있다.
다양한 실시 예에 따르면, 로봇 선단(예: 로봇 선단(130))에 연결된 공구(예: 공구(140))를 이용하여 적어도 하나의 작업 영역 중 선택된 작업 영역(예: 작업 영역(240))에 지정된 작업을 수행하는 이동형 로봇(예: 이동형 로봇(100))의 자세 정렬 방법은, 상기 이동형 로봇을 상기 선택된 작업 영역으로 이동시키고, 상기 공구를 측정 자세로 이동시키는 동작, 상기 로봇 선단에 설치된 제1 자세 측정 센서(예: 제1 자세 측정 센서(160))를 이용하여 현재의 공구 자세를 측정하는 동작, 목표 자세 저장 장치(예: 목표 자세 저장 장치(180))로부터 상기 선택된 작업 영역에 대한 목표 자세를 확인하는 동작, 상기 현재의 공구 자세에 기초하여 자세 연산 장치(예: 자세 연산 장치(170))를 통해 제1 회전 행렬을 연산하는 동작, 상기 제1 회전 행렬 및 상기 목표 자세에 대응하는 제2 회전 행렬의 차이에 기초하여 자세 보정 연산 장치(예: 자세 보정 연산 장치(190))를 통해 제3 회전 행렬을 연산하는 동작, 상기 자세 보정 연산 장치를 통해 상기 제3 회전 행렬을 변환하여 상기 로봇 선단을 제어하기 위한 로봇 회전 각도를 생성하는 동작, 상기 로봇 회전 각도에 기초하여 상기 로봇 선단의 위치를 변경하여 상기 공구와 상기 선택된 작업 영역을 정렬하는 동작을 포함할 수 있다.
다양한 실시 예에 따르면, 상기 로봇 회전 각도에 기초하여 상기 로봇 선단의 위치를 변경한 후, 제1 자세 측정 센서를 통해 상기 로봇 선단의 자세 정보를 수신하는 동작, 및 상기 자세 정보와 상기 목표 자세의 자세 오차에 기초하여 상기 현재의 공구 자세를 측정하는 동작 내지 상기 공구와 상기 선택된 작업 영역을 정렬하는 동작의 반복 수행 여부를 판단하는 동작을 더 포함할 수 있다. 다양한 실시 예에 따르면, 상기 자세 오차가 기준 오차보다 작은 경우, 상기 공구를 상기 작업 영역에 결합할 수 있다.
다양한 실시 예에 따르면, 상기 자세 오차가 기준 오차보다 큰 경우, 상기 현재의 공구 자세를 측정하는 동작 내지 상기 공구와 상기 선택된 작업 영역을 정렬하는 동작은 반복하여 수행될 수 있다.
다양한 실시 예에 따르면, 상기 자세 연산 장치는 상기 공구가 상기 작업 영역의 일정 범위 이내에 정렬된 상태에서 측정된 상기 제1 자세 측정 센서의 측정값에 기초하여 상기 제2 회전 행렬을 연산하고, 상기 제2 회전 행렬을 상기 목표 자세 저장 장치에 미리 저장할 수 있다.
다양한 실시 예에 따르면, 상기 자세 연산 장치는 상기 작업 영역에 부착된 제2 자세 측정 센서(예: 제2 자세 측정 센서(260))의 측정값에 기초하여 상기 제2 회전 행렬을 연산하고, 상기 제2 회전 행렬을 상기 목표 자세 저장 장치에 미리 저장할 수 있다. 다양한 실시 예에 따르면, 상기 제1 자세 측정 센서 및 상기 제2 자세 측정 센서 각각은 상기 로봇 선단의 중력 방향에 대한 기울어짐을 측정하는 가속도 센서(예: 가속도 센서(161)) 및 지자기의 방향을 측정하는 지자계 센서(예: 지자계 센서(162))를 포함할 수 있다. 다양한 실시 예에 따르면, 상기 제1 자세 측정 센서 및 상기 제2 자세 측정 센서 각각은 상기 가속도 센서의 측정 결과 및 상기 지자계 센서의 측정 결과에 기초하여 상기 고정 좌표계에서 상기 로봇 선단의 오일러 각도 정보를 생성할 수 있다.
다양한 실시 예에 따르면, 상기 제2 자세 측정 센서는 상기 작업 영역에 탈부착되도록 하는 결합 부재를 포함할 수 있다.
본 문서의 다양한 실시 예들 및 이에 사용된 용어들은 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 해당 실시 예의 다양한 변경, 균등물, 및/또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및/또는 B 중 적어도 하나", "A, B 또는 C" 또는 "A, B 및/또는 C 중 적어도 하나" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제1", "제2", "첫째", 또는 "둘째" 등의 표현들은 해당 구성요소들을, 순서 또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 어떤(예: 제1) 구성요소가 다른(예: 제2) 구성요소에 "(기능적으로 또는 통신적으로) 연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다.
본 문서에서, "~하도록 설정된(adapted to or configured to)"은 상황에 따라, 예를 들면, 하드웨어적 또는 소프트웨어적으로 "~에 적합한", "~하는 능력을 가지는", "~하도록 변경된", "~하도록 만들어진", "~를 할 수 있는", 또는 "~하도록 설계된"과 상호 호환적으로(interchangeably) 사용될 수 있다. 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 설정된 (또는 구성된) 프로세서"는 해당 동작들을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치(예: 메모리 130)에 저장된 하나 이상의 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(예: CPU 또는 AP)를 의미할 수 있다.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어(firmware)로 구성된 유닛(unit)을 포함하며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. "모듈"은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. "모듈"은 기계적으로 또는 전자적으로 구현될 수 있으며, 예를 들면, 어떤 동작들을 수행하는, 알려졌거나 앞으로 개발될, ASIC(application-specific integrated circuit) 칩, FPGAs(field-programmable gate arrays), 또는 프로그램 가능 논리 장치를 포함할 수 있다.
다양한 실시 예들에 따른 장치(예: 모듈들 또는 그 기능들) 또는 방법(예: 동작들)의 적어도 일부는 프로그램 모듈의 형태로 컴퓨터로 판독 가능한 저장 매체(예: 메모리(130))에 저장된 명령어로 구현될 수 있다. 상기 명령어가 프로세서(예: 프로세서(120))에 의해 실행될 경우, 프로세서가 상기 명령어에 해당하는 기능을 수행할 수 있다. 컴퓨터로 판독 가능한 기록 매체는, 하드디스크, 플로피디스크, 마그네틱 매체(예: 자기테이프), 광기록 매체(예: CD-ROM, DVD, 자기-광 매체(예: 플롭티컬 디스크), 내장 메모리 등을 포함할 수 있다. 명령어는 컴파일러에 의해 만들어지는 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다.
다양한 실시 예들에 따른 구성 요소(예: 모듈 또는 프로그램 모듈) 각각은 단수 또는 복수의 개체로 구성될 수 있으며, 전술한 해당 서브 구성 요소들 중 일부 서브 구성 요소가 생략되거나, 또는 다른 서브 구성 요소를 더 포함할 수 있다. 대체적으로 또는 추가적으로, 일부 구성 요소들(예: 모듈 또는 프로그램 모듈)은 하나의 개체로 통합되어, 통합되기 이전의 각각의 해당 구성 요소에 의해 수행되는 기능을 동일 또는 유사하게 수행할 수 있다. 다양한 실시 예들에 따른 모듈, 프로그램 모듈 또는 다른 구성 요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱(heuristic)하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.

Claims (20)

  1. 공구를 이용하여 작업 영역에 지정된 작업을 수행하는 이동형 로봇에 있어서,
    상기 공구와 연결되는 로봇 선단;
    상기 로봇 선단에 설치되며, 고정 좌표계에 기반하여 상기 로봇 선단의 현재 자세 정보를 측정하는 제1 자세 측정 센서;
    상기 작업 영역에 대응하는 제2 회전 행렬을 저장하는 목표 자세 저장 장치;
    상기 현재 자세 정보에 기초하여 상기 로봇 선단의 제1 회전 행렬을 연산하며, 상기 작업 영역에 부착된 제2 자세 측정 센서의 측정값에 기초하여 상기 제2 회전 행렬을 연산하고, 상기 제2 회전 행렬을 상기 목표 자세 저장 장치에 미리 저장하는 자세 연산 장치;
    상기 제1 회전 행렬 및 상기 제2 회전 행렬의 차이에 기초하여 제3 회전 행렬을 연산하고, 상기 제3 회전 행렬을 상기 로봇 선단을 제어하기 위한 로봇 각도 정보로 변환하는 자세 보정 연산 장치; 및
    상기 로봇 각도 정보에 기초하여 상기 로봇 선단과 상기 작업 영역을 정렬하는 로봇 제어기를 포함하는 이동형 로봇.
  2. 청구항 1에 있어서,
    상기 고정 좌표계는 중력을 기반으로 설정되는 좌표계를 포함하는 이동형 로봇.
  3. 삭제
  4. 청구항 1에 있어서,
    상기 작업 영역은 복수의 작업 영역들 중 선택된 하나를 포함하고,
    상기 목표 자세 저장 장치는 상기 복수의 작업 영역들 각각에 대응하는 목표 자세에 대한 데이터를 미리 저장하는 이동형 로봇.
  5. 삭제
  6. 삭제
  7. 청구항 4에 있어서,
    상기 제1 자세 측정 센서 및 상기 제2 자세 측정 센서 각각은 중력 방향을 측정하는 가속도 센서 및 지자기의 방향을 측정하는 지자계 센서 중 적어도 하나를 포함하는 이동형 로봇.
  8. 청구항 7에 있어서,
    상기 제1 자세 측정 센서는 상기 가속도 센서의 측정 결과 및 상기 지자계 센서의 측정 결과에 기초하여 상기 고정 좌표계에서 상기 로봇 선단의 오일러 각도 정보를 생성하며,
    상기 제2 자세 측정 센서는 상기 가속도 센서의 측정 결과 및 상기 지자계 센서의 측정 결과에 기초하여 상기 고정 좌표계에서 상기 선택된 작업 영역의 자세에 대응하는 오일러 각도 정보를 생성하는 이동형 로봇.
  9. 청구항 1에 있어서,
    상기 제2 자세 측정 센서는 상기 작업 영역에 탈부착되도록 하는 결합 부재를 포함하는 이동형 로봇.
  10. 청구항 1에 있어서,
    상기 현재 자세 정보는 상기 로봇 선단의 오일러 각도 정보를 포함하는 이동형 로봇.
  11. 청구항 1에 있어서,
    상기 작업 영역에 설치되는 자세 정렬 패턴을 감지하는 카메라를 더 포함하고,
    상기 로봇 제어기는 상기 자세 정렬 패턴에 대한 상기 카메라의 감지 결과에 기초하여 상기 로봇 선단을 측정 자세로 이동시키는 이동형 로봇.
  12. 로봇 선단에 연결된 공구를 이용하여 적어도 하나의 작업 영역 중 선택된 작업 영역에 지정된 작업을 수행하는 이동형 로봇의 자세 정렬 방법에 있어서,
    상기 이동형 로봇을 상기 선택된 작업 영역으로 이동시키고, 상기 공구를 측정 자세로 이동시키는 동작;
    상기 로봇 선단에 설치된 제1 자세 측정 센서를 이용하여 현재의 공구 자세를 측정하는 동작;
    목표 자세 저장 장치로부터 상기 선택된 작업 영역에 대한 목표 자세를 확인하는 동작;
    상기 현재의 공구 자세에 기초하여 자세 연산 장치를 통해 제1 회전 행렬을 연산하는 동작;
    상기 작업 영역에 부착된 제2 자세 측정 센서의 측정값에 기초하여 상기 목표 자세에 대응하는 제2 회전 행렬을 연산하고, 상기 제2 회전 행렬을 상기 목표 자세 저장 장치에 미리 저장하는 동작;
    상기 제1 회전 행렬 및 상기 제2 회전 행렬의 차이에 기초하여 자세 보정 연산 장치를 통해 제3 회전 행렬을 연산하는 동작;
    상기 자세 보정 연산 장치를 통해 상기 제3 회전 행렬을 변환하여 상기 로봇 선단을 제어하기 위한 로봇 회전 각도를 생성하는 동작;
    상기 로봇 회전 각도에 기초하여 상기 로봇 선단의 위치를 변경하여 상기 공구와 상기 선택된 작업 영역을 정렬하는 동작을 포함하는 자세 정렬 방법.
  13. 청구항 12에 있어서,
    상기 로봇 회전 각도에 기초하여 상기 로봇 선단의 위치를 변경한 후, 상기 제1 자세 측정 센서를 통해 상기 로봇 선단의 자세 정보를 수신하는 동작; 및
    상기 자세 정보와 상기 목표 자세의 자세 오차에 기초하여 상기 현재의 공구 자세를 측정하는 동작 내지 상기 공구와 상기 선택된 작업 영역을 정렬하는 동작의 반복 수행 여부를 판단하는 동작을 더 포함하는 자세 정렬 방법.
  14. ◈청구항 14은(는) 설정등록료 납부시 포기되었습니다.◈
    청구항 13에 있어서,
    상기 자세 오차가 기준 오차보다 작은 경우, 상기 공구를 상기 작업 영역에 결합하는 자세 정렬 방법.
  15. ◈청구항 15은(는) 설정등록료 납부시 포기되었습니다.◈
    청구항 13에 있어서,
    상기 자세 오차가 기준 오차보다 큰 경우, 상기 현재의 공구 자세를 측정하는 동작 내지 상기 공구와 상기 선택된 작업 영역을 정렬하는 동작은 반복하여 수행되는 자세 정렬 방법.
  16. 삭제
  17. 삭제
  18. ◈청구항 18은(는) 설정등록료 납부시 포기되었습니다.◈
    청구항 12에 있어서,
    상기 제1 자세 측정 센서 및 상기 제2 자세 측정 센서 각각은 중력 방향을 측정하는 가속도 센서 및 지자기의 방향을 측정하는 지자계 센서를 포함하는 자세 정렬 방법.
  19. ◈청구항 19은(는) 설정등록료 납부시 포기되었습니다.◈
    청구항 18에 있어서,
    상기 제1 자세 측정 센서는 상기 가속도 센서의 측정 결과 및 상기 지자계 센서의 측정 결과에 기초하여 고정 좌표계에서 상기 로봇 선단의 오일러 각도 정보를 생성하며,
    상기 제2 자세 측정 센서는 상기 가속도 센서의 측정 결과 및 상기 지자계 센서의 측정 결과에 기초하여 상기 고정 좌표계에서 상기 선택된 작업 영역의 자세에 대응하는 오일러 각도 정보를 생성하는 자세 정렬 방법.
  20. ◈청구항 20은(는) 설정등록료 납부시 포기되었습니다.◈
    청구항 12에 있어서,
    상기 제2 자세 측정 센서를 상기 작업 영역에 결합 부재를 통해 탈부착하는 동작;을 더 포함하는 자세 정렬 방법.
KR1020190020127A 2019-02-20 2019-02-20 이동형 로봇 및 그것의 로봇 암 정렬 방법 KR102658278B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020190020127A KR102658278B1 (ko) 2019-02-20 2019-02-20 이동형 로봇 및 그것의 로봇 암 정렬 방법
PCT/KR2020/002290 WO2020171527A1 (ko) 2019-02-20 2020-02-18 이동형 로봇 및 그것의 로봇 암 정렬 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190020127A KR102658278B1 (ko) 2019-02-20 2019-02-20 이동형 로봇 및 그것의 로봇 암 정렬 방법

Publications (2)

Publication Number Publication Date
KR20200101796A KR20200101796A (ko) 2020-08-28
KR102658278B1 true KR102658278B1 (ko) 2024-04-18

Family

ID=72143566

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190020127A KR102658278B1 (ko) 2019-02-20 2019-02-20 이동형 로봇 및 그것의 로봇 암 정렬 방법

Country Status (2)

Country Link
KR (1) KR102658278B1 (ko)
WO (1) WO2020171527A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102320854B1 (ko) * 2020-12-03 2021-11-02 임경철 카메라 성능 평가를 위한 비전 시스템 및 그 제어 방법
TW202235231A (zh) * 2021-03-09 2022-09-16 香港商香港科能有限公司 機器人協同系統及其應用和加工精度評價方法
CN114750153B (zh) * 2022-04-13 2024-03-19 上海电气集团股份有限公司 机器人机械臂的运动控制系统、协作机器人及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6462986B2 (ja) * 2014-02-07 2019-01-30 キヤノン株式会社 ロボット制御方法、物品の製造方法、及び制御装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4453085A (en) * 1981-05-11 1984-06-05 Diffracto Ltd. Electro-optical systems for control of robots, manipulator arms and co-ordinate measuring machines
US5392384A (en) * 1991-04-09 1995-02-21 Kabushiki Kaisha Yaskawa Denki Method of calibrating an industrial robot
KR100244758B1 (ko) * 1996-07-31 2000-03-02 김덕중 수직 다관절 용접 로봇의 캘리브레이션 방법 및 그 장치
KR100956520B1 (ko) * 2002-04-26 2010-05-06 혼다 기켄 고교 가부시키가이샤 다리식 이동 로봇의 자기위치 추정 장치
DE102004026185A1 (de) * 2004-05-28 2005-12-22 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Betreiben einer Maschine, wie eines Mehrachs- Industrieroboters

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6462986B2 (ja) * 2014-02-07 2019-01-30 キヤノン株式会社 ロボット制御方法、物品の製造方法、及び制御装置

Also Published As

Publication number Publication date
KR20200101796A (ko) 2020-08-28
WO2020171527A1 (ko) 2020-08-27

Similar Documents

Publication Publication Date Title
US10800036B1 (en) Tooltip stabilization
EP1607194B1 (en) Robot system comprising a plurality of robots provided with means for calibrating their relative position
KR102658278B1 (ko) 이동형 로봇 및 그것의 로봇 암 정렬 방법
US11230016B1 (en) Multi-resolution localization system
US7532949B2 (en) Measuring system
US20160279800A1 (en) Robot, robot control device, and robotic system
US10507578B1 (en) Optimization of observer robot locations
US9352467B2 (en) Robot programming apparatus for creating robot program for capturing image of workpiece
CN110621447B (zh) 机器人传送器校准方法、机器人系统以及控制系统
JP2005300230A (ja) 計測装置
JP6565175B2 (ja) ロボットおよびロボットシステム
CN107186714A (zh) 一种精确定位方法、定位系统以及机械手装置
US20210362340A1 (en) Device and method for calibrating a robotic cell
JP2016182648A (ja) ロボット、ロボット制御装置およびロボットシステム
KR20210027455A (ko) 로봇 페이로드 위치의 감지 및 수정을 위한 시스템 및 방법
EP4241241A1 (en) Optimizing calibration with constraints between different coordinate frames
EP4382258A1 (en) Robot control device, robot control system, and robot control method
JP2016187845A (ja) ロボットおよびロボットシステム
EP4382259A1 (en) Robot control device, robot control system, and robot control method
WO2022217464A1 (en) Method and apparatus for robot system management
EP4382260A1 (en) Robot control device, robot control system, and robot control method
JP2012016769A (ja) 視覚センサのマウント装置と方法
CN115229779A (zh) 应用于工业机器人的tcp校准方法及tcp校准装置
TW202348378A (zh) 非易失性的電腦可讀取媒體、標記位置登記裝置、方法以及其中使用的標記
CN118322213A (zh) 大尺寸工作空间下基于视觉的工业机器人运动学标定方法

Legal Events

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