KR20210136067A - 자율적인 미지의 물체의 픽 앤드 플레이스 - Google Patents
자율적인 미지의 물체의 픽 앤드 플레이스 Download PDFInfo
- Publication number
- KR20210136067A KR20210136067A KR1020217031899A KR20217031899A KR20210136067A KR 20210136067 A KR20210136067 A KR 20210136067A KR 1020217031899 A KR1020217031899 A KR 1020217031899A KR 20217031899 A KR20217031899 A KR 20217031899A KR 20210136067 A KR20210136067 A KR 20210136067A
- Authority
- KR
- South Korea
- Prior art keywords
- gripping
- grip
- robotic system
- shape
- end effector
- Prior art date
Links
- 239000012636 effector Substances 0.000 claims abstract description 82
- 230000000007 visual effect Effects 0.000 claims abstract description 27
- 238000000034 method Methods 0.000 claims description 113
- 238000004891 communication Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 description 57
- 238000010586 diagram Methods 0.000 description 20
- 230000006378 damage Effects 0.000 description 5
- 238000001514 detection method Methods 0.000 description 5
- 230000033001 locomotion Effects 0.000 description 5
- 239000000463 material Substances 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 239000003550 marker Substances 0.000 description 4
- 238000005096 rolling process Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 239000011800 void material Substances 0.000 description 3
- 241000282412 Homo Species 0.000 description 2
- 208000027418 Wounds and injury Diseases 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000005520 cutting process Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 239000004744 fabric Substances 0.000 description 2
- 208000014674 injury Diseases 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000000284 resting effect Effects 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013450 outlier detection Methods 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
- 238000002310 reflectometry Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000000344 soap Substances 0.000 description 1
- 230000007103 stamina Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000004557 technical material Substances 0.000 description 1
- 238000013518 transcription Methods 0.000 description 1
- 230000035897 transcription Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000037303 wrinkles Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
- B25J9/1697—Vision controlled systems
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1612—Programme controls characterised by the hand, wrist, grip control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1674—Programme controls characterised by safety, monitoring, diagnostic
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1687—Assembly, peg and hole, palletising, straight line, weaving pattern movement
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1689—Teleoperation
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1692—Calibration of manipulator
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/12—Edge-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39484—Locate, reach and grasp, visual guided grasping
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39505—Control of gripping, grasping, contacting force, force distribution
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39523—Set holding force as function of dimension, weight, shape, hardness, surface
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39527—Workpiece detector, sensor mounted in, near hand, gripper
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Orthopedic Medicine & Surgery (AREA)
- Manipulator (AREA)
Abstract
작업공간 영역에 존재하는 하나 이상의 물체에 대한 하나 이상의 잠재적으로 파지 가능한 형태부의 세트는 복수의 카메라들로부터 수신된 시각적 데이터에 기초하여 결정된다. 하나 이상의 잠재적으로 파지 가능한 형태부의 적어도 하위세트 각각에 대해 하나 이상의 대응하는 파지 방식이 로봇 암 및 엔드 이펙터로써 형태부를 파지하도록 결정된다. 대응하는 형태부의 성공적인 파지의 확률과 관련된 점수는 상기 파지 방식의 적어도 하위세트 각각에 대해 결정된다. 하나 이상의 잠재적으로 파지 가능한 형태부의 제1 형태부는 제1 형태부에 대한 선택된 파지 방식과 관련된 대응하는 점수에 적어도 부분적으로 기초하여 선택된 파지 방식을 사용하여 파지되도록 선택된다. 로봇 암과 엔드 이펙터는 선택된 파지 방식을 사용하여 제 1 형태부를 파지하기 위해 시도하도록 제어된다.
Description
다른 출원에 대한 상호 참조
본 출원은 2019년 4월 5일에 출원된 자율적인 미지의 물체의 픽 앤드 플레이스(AUTONOMOUS UNKNOWN OBJECT PICK AND PLACE)라는 명칭의 미국 가특허 출원 제62/829,969호에 대한 우선권을 주장하며, 이는 모든 목적을 위해 본원에 참조로 합체되어 있다.
수년 동안, 사람은 물체를 한 위치에서 다른 위치로 이동시켜야 하는 동작에 종사해 왔다. 물체가 이동되는 처리량은 사람의 힘, 체력 및 기술에 따라 다르다. 이동하는 물체의 처리량을 향상시키기 위해 도구와 기계가 도입되었지만, 이러한 도구와 기계는 일반적으로 사람이 조작하거나 반조작했다. 자율 로봇은 물체를 한 위치에서 다른 위치로 옮기는 데 사용될 수 있다. 자율 로봇은 휴식 없이 주 7일 하루 24시간 일할 수 있는 능력과 같이 사람에 비해 상당한 이점을 제공한다. 자율 로봇은 사람 노동보다 이점을 제공하지만, 자율 로봇을 사용하면 물체를 한 위치에서 다른 위치로 이동시키려고 할 때 신규 문제가 발생한다.
본 발명의 다양한 실시예가 다음의 상세한 설명 및 첨부 도면에 개시되어 있다.
도 1은 일부 실시예에 따라 물체를 자율적으로 픽 앤드 플레이스(pick and place)하기 위한 시스템을 도시하는 블록도이다.
도 2는 일부 실시예에 따라 물체를 픽 앤드 플레이스하기 위한 공정을 예시하는 흐름도이다.
도 3은 일부 실시예에 따라 물체를 파지하고 이동시키기 위한 공정을 도시하는 흐름도이다.
도 4는 일부 실시예에 따라 형태부를 파지하기 위한 공정을 예시하는 흐름도이다.
도 5는 일부 실시예에 따라 파지 기술을 선택하기 위한 공정을 예시하는 흐름도이다.
도 6은 일부 실시예에 따라 물체를 파지하고 이동시키기 위한 공정을 도시하는 흐름도이다.
도 7은 일부 실시예에 따라 물체를 이동시키기 위한 공정을 예시하는 흐름도이다.
도 8은 일부 실시예에 따라 로봇 시스템의 동작을 갱신하기 위한 공정을 예시하는 흐름도이다.
도 9는 일부 실시예에 따라 흡입 기초 엔드 이펙터를 예시하는 블록도이다.
도 10은 일부 실시예에 따라 그리퍼 유형 엔드 이펙터를 예시하는 블록도이다.
도 1은 일부 실시예에 따라 물체를 자율적으로 픽 앤드 플레이스(pick and place)하기 위한 시스템을 도시하는 블록도이다.
도 2는 일부 실시예에 따라 물체를 픽 앤드 플레이스하기 위한 공정을 예시하는 흐름도이다.
도 3은 일부 실시예에 따라 물체를 파지하고 이동시키기 위한 공정을 도시하는 흐름도이다.
도 4는 일부 실시예에 따라 형태부를 파지하기 위한 공정을 예시하는 흐름도이다.
도 5는 일부 실시예에 따라 파지 기술을 선택하기 위한 공정을 예시하는 흐름도이다.
도 6은 일부 실시예에 따라 물체를 파지하고 이동시키기 위한 공정을 도시하는 흐름도이다.
도 7은 일부 실시예에 따라 물체를 이동시키기 위한 공정을 예시하는 흐름도이다.
도 8은 일부 실시예에 따라 로봇 시스템의 동작을 갱신하기 위한 공정을 예시하는 흐름도이다.
도 9는 일부 실시예에 따라 흡입 기초 엔드 이펙터를 예시하는 블록도이다.
도 10은 일부 실시예에 따라 그리퍼 유형 엔드 이펙터를 예시하는 블록도이다.
본 발명은 공정; 장치; 시스템; 재료의 조성; 컴퓨터 판독 가능 저장 매체에 구현된 컴퓨터 프로그램 제품; 및/또는 프로세서, 예컨대 프로세서에 연결된 메모리에 저장되고 및/또는 메모리에 의해 제공되는 명령을 실행하도록 구성된 프로세서를 포함하는 수많은 방식으로 구현될 수 있다. 본 명세서에서, 이러한 구현 또는 본 발명이 취할 수 있는 임의의 다른 형태는 기술로 지칭될 수 있다. 일반적으로, 개시된 공한정 단계의 순서는 본 발명의 범위 내에서 변경될 수 있다. 특별한 언급이 없는 한, 프로세서나 메모리와 같은 동작을 수행하도록 구성되는 구성요소는 주어진 시간에 동작을 수행하도록 일시적으로 구성되는 일반 구성요소 또는 동작을 수행하도록 제조된 특정 구성요소로서 구현될 수 있다. 본 명세서에서 사용되는 바와 같이, '프로세서'라는 용어는 컴퓨터 프로그램 명령과 같은 데이터를 처리하도록 구성된 하나 이상의 장치, 회로, 및/또는 처리 코어를 지칭한다.
본 발명의 하나 이상의 실시예에 대한 상세한 설명이 본 발명의 원리를 예시하는 첨부 도면과 함께 아래에 제공된다. 본 발명은 이러한 실시예와 관련하여 설명되지만, 본 발명은 임의의 실시예에 제한되지 않는다. 본 발명의 범위는 청구범위에 의해서만 제한되며 본 발명은 수많은 대안, 수정 및 등가물을 포함한다. 본 발명의 완전한 이해를 제공하기 위해 다수의 특정 세부사항이 하기 설명에 기재되어 있다. 이러한 세부사항은 예시의 목적으로 제공되며 본 발명은 이러한 특정 세부사항의 일부 또는 전부 없이 청구범위에 따라 실시될 수 있다. 명확성을 위해, 본 발명과 관련된 기술 분야에서 알려진 기술 자료는 본 발명이 불필요하게 불명료해지는 일이 없도록 상세히 설명하지 않았다.
로봇 시스템은 미지의 물체를 제1 위치에서 제2 위치로 자율적으로 픽 앤드 플레이스하는 동작을 수행한다. 로봇 시스템은 하나 이상의 카메라에서 얻은 시각적 데이터를 사용하여 제 1 위치에서 물체를 시각화할 수 있다. 그러나 일부 경우에 물체가 임의 및/또는 어수선한 방식으로 쌓여 물체 경계를 식별하거나 작업공간 영역의 모든 물체에 대한 형상 및 위치 정보를 얻는 것이 어렵거나 불가능할 수 있다.
다양한 실시예에서, 본원에 개시된 로봇 시스템은 작동 단부(예: 그리퍼, 흡입 등)에 액추에이터를 갖는 로봇 암을 사용하여 제1 위치로부터 이전에 미지의 임의의 물체를 픽업한 다음 제 2 위치에 배치한다. 로봇 시스템의 처리량은 로봇 시스템이 제 1 시도에서 물체를 성공적으로 파지하고 공정에서 물체를 손상시키지 않고 물체를 드롭 오프 영역(drop off area)으로 이동시키는 능력에 달려 있다. 그러나 물체는 제 1 위치에서 함께 어수선할 수 있으므로 카메라에 기초하여 물체 경계를 결정하기가 어렵다. 로봇 시스템은 잘못된 위치에서 물체를 파지하여 로봇 시스템이 물체를 낙하시킬 수 있으며, 이는 제1 위치에서 물체 및/또는 하나 이상의 다른 물체를 손상시킬 수 있다.
다른 시스템은 픽 앤드 플레이스 공정을 시작하기 전에 제1 위치에 위치한 모든 물체(예: 물체는 특정 유형의 비누이고, 물체는 특정 유형의 스테이플러 등)를 구체적으로 식별할 수 있다. 그러나 이러한 공정은 모든 물체를 식별하는 데 필요한 계산 시간이 수행하는 데 오랜 시간이 걸릴 수 있기 때문에 로봇 시스템의 처리량을 감소시킨다. 또한 물체가 잘못 식별된 경우, 로봇 시스템은 픽 앤드 플레이스 공정이 다시 시작되기 전에 식별 공정을 다시 시작할 수 있다.
본원에 개시된 기술은 미지의 물체를 제1 위치에서 제2 위치로 자율적으로 픽 앤드 플레이스하는 로봇 시스템의 처리량을 증가시키는 데 사용된다. 로봇 시스템은 작업공간 영역(예: 제1 위치)을 보기 위해 사용되는 복수의 카메라들에 연결된다. 하나 이상의 물체가 작업공간 영역에 있는 것으로 결정된다. 하나 이상의 물체들중 한 물체는 임의의 색상, 기하학, 질감 등으로 구성된다.
하나 이상의 물체 각각의 기하학적 구조는 복수의 카메라들의 데이터에 기초하여 결정된다. 예컨대, 복수의 카메라들의 데이터는 점 클라우드 정보(point cloud information)를 포함할 수 있다. 잠재적으로 파지 가능한 형태부(예: 핸들, 돌출부, 공극 등)은 하나 이상의 물체의 기하학적 구조에 기초하여 작업공간 영역의 하나 이상의 물체 각각에 대해 결정된다.
각각의 파지 가능한 형태부에 대해 대응하는 파지 방식이 결정된다. 예컨대, 로봇 시스템은 다양한 각각의 형상 및/또는 치수를 갖는 형태부에 대한 하나 이상의 파지 기술을 저장할 수 있다. 일부 실시예에서, 형태부는 물체의 일부에 대응한다. 일부 실시예에서, 형태부는 전체 물체에 대응한다.
성공적인 파지의 대응하는 점수는 각각의 대응하는 잠재적으로 파지 가능한 형태부와 대해 결정된 파지 방식 각각에 대해 결정된다. 파지 방식들 중 하나는 점수에 기초하여 선택되고 선택된 파지 방식과 관련된 물체가 픽업되도록 시도된다. 로봇 시스템이 물체를 성공적으로 파지하는 경우, 로봇 시스템은 물체를 작업공간 영역에서 제 2 위치(예: 드롭 오프 영역)로 이동한다. 로봇 시스템이 물체를 성공적으로 파지하는 데 실패한 경우, 로봇 시스템은 물체에 대한 대안적인 파지 방식을 시도하거나 다른 물체를 파지하려고 시도한다. 작업공간 영역에서 드롭 오프 영역으로 물체를 픽 앤드 플레이스하는 공정은 작업공간 영역으로부터의 모든 물체가 드롭 오프 영역에 놓여질 때까지 계속된다.
로봇 시스템은 물체를 상이한 형상과 관련시키고 상이한 형상 각각에 대한 파지 방식을 사용함으로써 로봇 시스템의 처리량을 증가시킬 수 있다. 이러한 기술은 모든 물체 세트에 적응할 수 있으며 물체를 픽 앤드 플레이스하기 전에 특정 물체 세트에 대해 로봇 시스템을 프로그래밍할 필요가 없다.
도 1은 일부 실시예에 따라 물체를 자율적으로 픽 앤드 플레이스하기 위한 시스템을 도시하는 블록도이다. 도시된 예에서, 로봇 시스템(101)은 환경(100)에서 작동한다. 로봇 시스템(101)은 고정 베이스(104)에 장착된 로봇 암(102), 엔드 이펙터(108), 하나 이상의 센서(134), 및 제어기를 포함하는 복수의 관절 세그먼트를 포함한다. 로봇 암(102)은 로봇 암(102) 및 로봇 암(102)의 원위 단부에 장착된 엔드 이펙터(108)를 조작하도록 구성된 제어기(106)에 연결된다. 일부 실시예에서, 제어기(106)는 전압 및/또는 다른 신호, 입력 등을 로봇 암(102) 및/또는 엔드 이펙터(108)를 포함하는 강성 요소들 사이의 각각의 조인트 각각에 구성된 모터에 제공함으로써 로봇 암(102) 및 엔드 이펙터(108)를 제어하여, 각각의 모터가 대응하는 토크(들)를 인가하여 모터의 회전 요소에 결합된 요소가 모터의 비회전 요소가 결합된 요소에 대해 이동하게 한다. 엔드 이펙터(108)는 흡입 그리퍼, 평행 그리퍼, 소프트 그리퍼, 공교한 그리퍼(dexterous gripper) 등을 포함할 수 있다. 로봇 시스템(101)은 복수의 엔드 이펙터들을 포함할 수 있고 물체를 파지하는 데 가장 적합한 엔드 이펙터를 선택할 수 있다. 예컨대, 엔드 이펙터는 물체의 질감에 기초하여 선택될 수 있다. 로봇 시스템(101)은 물체에 주름진 영역이 너무 많은 경우, 흡입 그리퍼 대신 평행 그리퍼를 선택할 수 있다.
도 1에 도시된 예에서, 로봇 암(102)은 도시된 예에서 상이한 형상의 물체(112, 114 및 116)를 포함하는 물체들을 테이블 또는 다른 표면(110)(예: 작업공간 영역)으로부터 픽업하여 컨베이어 벨트(118)(예: 드롭 오프 영역)에 내려 놓는 데 사용된다. 도시된 바와 같이, 로봇 암(102)은 미리 물체(120)가 컨베이어 벨트(118)에서 목적지(122)로 떨어지는 방향으로 회전하는 컨베이어 벨트(118) 상에 품목(120)을 내려 놓는 데 사용되었다. 작업공간 영역은 컨베이어 벨트 또는 회전 플랫폼과 같은 이동 플랫폼 또는 물체 더미(안정 또는 불안정)가 있는 고정 영역을 포함할 수 있다.
다양한 실시예에서, 도 1에 도시된 "픽 앤드 플레이스" 동작은 로봇 암(102), 엔드 이펙터(108), 및 제어기(106)를 포함하는 로봇 시스템(101)에 의해, 적어도 부분적으로 자율 동작 모드에서 수행된다. 예컨대, 일부 실시예에서 제어기(106) 및/또는 프로세서, 메모리, 및 기타 구성요소를 포함하는 컴퓨터와 같은 하나 이상의 다른 제어 장치는 도 1에 예시된 픽 앤드 플레이스 동작을 수행하도록 프로그래밍된다. 예컨대, 일부 실시예에서 프로그래머 또는 다른 오퍼레이터는 로봇 시스템(101)이 환경(100) 및 테이블(110) 상의 물체에 대한 위치[또는 일부 실시예에서 좌표 세트 또는 한편으로는 테이블(110) 및 컨베이어 벨트(118)와 관련된 다른 위치]를 인식하도록 프로그래밍하거나 다르게 구성할 수 있다.
일부 실시예에서, 로봇 시스템(101)은 픽 앤드 플레이스 동작 및/또는 그 일부를 수행하기 위해 라이브러리 또는 방식의 다른 저장소를 사용하도록 프로그래밍되거나 달리 구성된다. 예컨대, 로봇 시스템(101)은 테이블(110) 위의 위치에 엔드 이펙터(108)를 위치시키기 위해 현재 위치 및 환경(100)에 대한 인식을 사용하도록 구성될 수 있다. 컴퓨터 비전 또는 다른 기술들이 다음 픽업할 물체를 식별하고 선택하는 데 사용될 수 있고, 물체를 픽업하는 방식은 예컨대 물체의 위치, 형상, 배향, 제시된 양태, 질감, 강성 등 중 하나 이상에 기초하여 자율적으로 선택될 수 있다.
예컨대, 도 1에 도시된 예에서, 로봇 시스템(101)은 정육면체 기하학적 구조를 갖는 것으로 물체(112)와 관련된 형태부를 인식하고 물체(112)를 픽업하기 전에 정육면체 기하학적 구조에 대한 파지 방식을 선택할 수 있다. 로봇은 피라미드 기하학적 구조를 갖는 것으로 물체(114)를 인식하고 피라미드 기하학적 구조에 대한 파지 방식을 선택할 수 있다. 로봇은 물체(116)가 원통형 기하학적 구조를 갖는 것으로 인식하고 원통형 기하학적 구조에에 대한 파지 방식을 선택할 수 있다.
환경(100)은 카메라(115, 117)와 같은 복수의 카메라들을 포함한다. 도 1은 2개의 카메라를 갖는 환경(100)을 도시하지만, 환경(100)은 n개의 카메라를 포함할 수 있으며, 여기서 n은 1보다 큰 수이다. 복수의 카메라들은 로봇 시스템(101)에 유선 또는 무선으로 연결될 수 있다. 일부 실시예에서, 복수의 카메라들 중 적어도 하나는 고정된 위치에 있다. 일부 실시예에서, 복수의 카메라들 중 적어도 하나는 동적으로 움직이고 있다(예: 드론과 같은 이동하는 물체에 부착됨). 일부 실시예들에서, 복수의 카메라들 중 적어도 하나는 정지될 수 있고 상이한 위치로 이동될 수 있다(예: 제1 위치에서 물체를 검출하고, 카메라를 제2 위치로 이동시키고, 제2 위치에서 물체를 검출한다). 일부 실시예에서, 하나 이상의 물체의 인지된 표면 형태부의 변화를 검출하기 위해 환경(100)에서 상이한 조명 조건이 사용된다.
복수의 카메라들을 사용하면, 로봇 시스템(101)이 서로 다른 관점에서 환경(100)을 볼 수 있다. 이렇게 하면 물체가 가려지는 것을 방지하고 물체 기하학적 구조 및 물체 경계를 보다 정확하게 추정할 수 있다. 예컨대, 카메라가 큰 물체 옆에 있는 작은 물체를 볼 수 없도록 큰 물체를 놓을 수 있다. 서로 다른 위치에서 여러 대의 카메라를 사용하면, 더 작은 물체를 볼 수 있고 더 작은 물체와 관련된 경계 정보를 결정할 수 있다. 하나의 카메라로 넓은 작업공간 영역을 커버할 수 없다. 복수의 카메라들와 관련된 시야는 로봇 시스템(101)에 작업공간 영역(110)의 보다 완전한 시야를 제공하기 위해 병합될 수 있다. 카메라 중 하나가 차단된 경우, 로봇 시스템(101)은 여전히 물체를 픽 앤드 플레이스할 수 있다. 카메라의 사용은 또한 로봇 시스템(101)이 본 명세서에 설명된 바와 같이 로봇 시스템이 재교정될 필요가 있는지 여부를 결정할 수 있게 한다. 예컨대, 아루코(ArUco) 마커(예: 이진 정사각형 기준 마커)는 복수의 카메라들을 초기에 정렬하는 데 사용될 수 있다.
일부 실시예에서, 로봇 시스템(101)은 복수의 카메라들 중 하나 이상에 의해 생성된 점 클라우드에 기초하여 물체를 분할한다. 로봇 시스템(101)은 RBG 또는 다중 스펙트럼 카메라 이미지(예: RGB, 깊이, 및/또는 적외선 등의 조합)에 기초하여 물체를 분할할 수 있다. 분할된 물체는 잠재적인 파지 가능한 영역이 결정될 수 있도록 점 클라우드로 역투영될 수 있다. 이는 점 클라우드 정보만으로는 물체를 분할할 때 사용할 수 없는 물체 유형, 예상 중량/재료, 선호하는 파지 방식 등과 같은 추가 정보를 제공한다. 이 결합된 분할 방식은 깊이만으로는 구별하기 어려운 물체를 선택할 때 잘 작동하지만(예: 함께 단단히 패킹된 작은 박스는 단일 평면처럼 점 클라우드로 보일 수 있음) 점 클라우드 정보와 결합된 이미지 분할을 사용하면 로봇 시스템(101)은 각각의 박스를 식별하고 입력으로부터 박스를 추출할 수 있다.
일부 실시예에서, 로봇 시스템(101)은 테이블(110)(예: 작업공간 영역)로부터 컨베이어 벨트(118)(예: 드롭 오프 영역)로 미지의 물체를 자율적으로 픽 앤드 플레이스한다. 로봇 시스템(101)은 카메라(115, 117)의 사용을 통해 물체(112, 114, 116)가 테이블(110)에 위치한다고 결정할 수 있다. 제어기(106)는 카메라(115, 117)로부터 수신된 시각적 데이터(예: 점 클라우드 데이터)에 기초하여 기하학적 구조 정보를 결정한다. 제어기(106)는 카메라(115, 117)로부터 수신된 시각적 데이터로부터 결정된 기하학적 구조 정보에 대응하는 물체(112, 114, 116)에 대한 대응하는 잠재적으로 파지 가능한 형태부를 선택한다. 예컨대, 카메라(115, 117)로부터 수신된 시각적 데이터에 기초하여, 제어기(106)는 물체(112)가 정육면체 형상에 대응하는 파지 가능한 형상을 포함하고, 물체(114)가 피라미드 형상에 대응하는 파지 가능한 형상을 포함하고, 물체(116)가 원통형 형상을 포함한다고 결정한다. 제어기(106)는 임계량 내에서 기하학적 물체와 가장 유사한 파지 가능한 형태부를 선택할 수 있다. 예컨대, 제어기(106)는 결정된 기하학적 구조 정보를 알려진 형태부들의 라이브러리와 비교하고 비교에 기초하여 물체에 대한 형태부를 선택할 수 있다. 일부 실시예에서, 형태부는 표준 형상(canonical shape)이다. 제어기(106)는 파지할 물체에 표준 형상을 중첩할 수 있다.
물체와 관련된 하나 이상의 파지 가능한 형태부를 결정하기 위해, 제어기(106)는 물체의 평면을 무작위로 절단하여 물체를 복수의 하위-세그먼트로 분해할 수 있다. 물체는 점 클라우드의 데이터 점을 최소한으로 점유하는 평면에서 절단될 수 있다(물체 상단의 뾰족한 형태부를 파지하는 것과 관련됨). 물체의 평면은 물체의 색상이나 외형의 큰 구배에 따라 절단될 수 있다. 일부 실시예에서, 일반적으로 생성된 하위 영역 내의 점 클라우드에 이상값이 있는지 여부를 결정하기 위해 멤버십 기능(membership function)이 사용된다. 추가 절단 평면이 추가되거나 물체가 잔류물이 많은 분리된 영역에서 분할될 수 있다. 하위 세그먼트는 별도로 처리될 수 있다. 예컨대, 이상치 검출 기술(outlier detection technique)이 하위 세그먼트에 적용될 수 있다. 일부 실시예에서, 5-시그마는 가우시안 분포를 점에 맞추고 평균으로부터 5-시그마(표준 편차) 떨어져 있는 점을 식별하고 식별된 점을 이상치로 표시한다. 일부 실시예에서, 하위샘플링 방법이 점 클라우드에 사용되고 평균에 다시 맞춘다. 그 다음 점을 사용하여 평균에서 특정 거리에 있는 점을 찾는다.
일부 실시예에서, 물체의 하위-세그먼트는 물체와 엔드 이펙터(108)의 상호작용의 도달 범위에 기초하여 결정된다. 예컨대, 엔드 이펙터(108)가 넓은 물체를 가로질러 파지할 수 없다면, 제어기(108)는 물체의 넓은 부분 주위에서 물체를 파지하지 않기로 결정한다. 흡입 그리퍼 엔드 이펙터를 사용하는 경우, 비교적 매끄러운 평평한 표면이 필요하다. 공극(void) 기초 선택 방식 또는 최소 점유 절단 평면을 피할 수 있다. 초기단계(primitive)는 분할된 새 클라우드에 다시 맞추워진다. 이 공정은 일정 수준의 품질 또는 반복 제한(recursion limit)이 충족될 때까지 되풀이식으로 반복될 수 있다.
제어기(106)는 카메라(115, 117)로부터 수신된 시각적 데이터에 기초하여 물체와 관련된 네거티브 공간(negative space) 정보(예: 공극)를 결정할 수 있다. 예컨대, 제어기(106)는 커피 머그의 핸들이 네거티브 공간을 포함하거나 자동차 타이어가 네거티브 공간을 포함하는 것을 결정할 수 있다. 복수의 카메라들로부터의 데이터를 사용하는 컴퓨터 비전 알고리즘은 컵, 머그, 감겨진 와이어, 테이프 등과 같은 물체의 공극(예: 구멍)을 결정할 수 있다. 공극이 검출되면, 물체는 공극에 그리퍼를 삽입하고 물체의 측벽으로부터 물체를 선택한다.
제어기(106)는 카메라(115, 117)로부터 수신된 시각적 데이터에 기초하여 선택될 물체의 곡률을 결정할 수 있다. 제어기(106)가 물체가 곡선이라고 결정하면, 제어기(106)는 물체를 내려 놓는 것과 관련된 제어 방식을 변경하여, 물체를 내려 놓을 때 물체가 굴르는 것을 방지하기 위해 곡선 물체는 더 조심스럽게 그리고 더 천천히 파지해제될 수 있다. 카메라(115, 117)로부터 수신된 시각적 데이터가 물체의 파지가 처음에 해제된 후 놓여진 물체가 구르거나 움직이고 있음을 나타내는 경우, 제어기(106)는 물체를 다시 파지하고 파지가 해제되기 전에 물체를 고정하려고 시도할 수 있다. 다시. 제어기(106)가 임계 횟수보다 많이 물체를 파지/재파지하려고 시도하면, 경고가 사용자(130)에게 제공될 수 있고 사용자(130)에게 물체가 굴러 떨어질 수 있다는 경고가 제공될 수 있다.
제어기(106)는 카메라(115, 117)로부터 수신된 시각적 데이터에 기초하여 물체(112, 114, 116)와 관련된 대응하는 형태부를 결정한다. 예컨대, 제어기(106)는 물체가 핸들을 포함한다고 결정할 수 있다. 카메라로부터 수신된 시각적 데이터는 물체와 관련된 최소 경계 및 물체와 관련된 최대 경계를 결정하는 데 사용될 수 있다. 물체의 경계는 물체와 관련된 높이, 폭 또는 깊이를 포함할 수 있다. 시각적 데이터는 물체의 경계 중 하나 이상이 결정되도록 하는 데이터를 제공할 수 있다. 예컨대, 제1 카메라는 제1 각도로 물체를 향하고 있을 수 있다. 제1 카메라는 물체의 높이 및 폭에 대한 정보는 제공할 수 있지만 물체의 깊이 정보는 제공할 수 없다. 제2 카메라는 제2 각도로 물체를 향하고 있을 수 있다. 제2 카메라는 물체의 깊이 및 높이에 대한 정보는 제공할 수 있지만, 물체의 폭에 대한 정보는 제공할 수 없다. 제어기(106)는 물체와 관련된 경계 정보(추정, 근사 또는 정확한)를 결정하기 위해 복수의 카메라들로부터 수신된 시각적 데이터를 병합할 수 있다. 예컨대, 제어기(106)는 물체의 높이 및 폭을 결정할 수 있지만 깊이는 결정할 수 없다. 제어기(106)는 물체의 깊이가 값의 특정 범위 내에 있다고 결정할 수 있다.
물체와 관련된 최소 경계는 물체가 특정 치수에서 가질 수 있는 최소값에 대응한다. 물체와 관련된 최대 경계는 물체가 특정 치수에서 가질 수 있는 최대값에 대응한다. 예컨대, 제1 카메라는 제1 물체 및 제1 물체 뒤에 있는 제2 물체를 검출할 수 있다. 제어기(106)는 제1 카메라로부터의 시각적 데이터에 기초하여 제2 물체가 제1 물체보다 12인치 뒤에 있다고 결정할 수 있다. 깊이 치수에서 제 1 물체가 가질 수 있는 최대값은 제 1 물체와 제 2 물체가 접촉하는 경우에 12인치이다. 제1 물체가 깊이 치수에서 가질 수 있는 최소값은 치수에 대한 임계값 최소 크기(예: 1/8인치, 1/4인치, 1/2인치, 1인치 등)이다. 임계값 최소 크기는 역사적으로 알려진 물체, 유사한 치수를 가진 알려진 물체, 물체의 전후배경, 물체 유형 등에 기초할 수 있다.
제어기(106)는 파지 방식을 형태부와 관련시키는 데이터 구조를 저장하는 메모리(미도시)와 관련되어 있다. 파지 방식은 파지 기술과 파지 기술을 사용하여 형태부를 파지하는 방법으로 구성될 수 있다. 일부 실시예에서, 파지 방식은 물체/세그먼트의 기하학적 추정에 맞출 수 있는 경계 박스의 장축 및 단축을 파지하는 것을 포함한다. 일부 실시예에서, 파지 방식은 일부 Z-높이에서 물체/세그먼트 추정치를 절단하고 경계 박스를 재계산하는 것을 포함한다. 다시 계산된 경계 박스의 장축과 단축을 파지할 수 있다. 이는 물체가 넓은 베이스를 갖지만 중간 어딘가에 작은 탑이 있고 로봇 시스템이 마을을 정확하게 파지할 때 유용하다. 메모리는 또한 파지 기술을 수행하는 방법에 대한 명령을 저장한다. 명령은 다른 물체에 영향을 미치는 것을 피하기 위해 필요한 경우, 그리퍼를 부분적으로 미리 폐쇄하는 명령를 포함할 수 있다. 메모리는 또한 내려 놓는 기술을 수행하는 방법에 대한 명령을 저장한다. 명령은 엔드 이펙터(108)가 드롭 오프 영역에 물체를 내려 놓는 동안 다른 물체를 방해하지 않도록 엔드 이펙터(108)의 그리퍼 핑거를 부분적으로 개방하라는 명령을 포함할 수 있다. 메모리는 또한 엔드 이펙터의 메커니즘 및 기하학적 구조(예: 평행 그리퍼 대 흡입 그리퍼, 그리퍼 핑거의 폭/길이 등)에 관한 정보를 저장한다.
파지 기술은 하나 이상의 형태부와 관련될 수 있다. 예컨대, 흡입 기술은 피라미드 형상에 대응하는 파지 가능한 형태부, 정육면체 형상에 대응하는 파지 가능한 형태부 또는 직사각형 프리즘 형상에 대응하는 파지 가능한 형태부를 가진 물체에 사용될 수 있다. 평행 파지 기술은 구형에 대응하는 파지 가능한 형태부를 가진 물체에 사용할 수 있다. 형태부는 하나 이상의 파지 기술과 관련될 수 있다. 예컨대, 구형에 대응하는 파지 가능한 형태부에 대해 평행 파지 기술이나 스쿠핑 기술(scooping technique)이 사용될 수 있다. 다른 유형의 그리퍼가 특정 형상을 갖는 형태부를 파지하는 데 사용될 수 있다. 예컨대, 제 1 파지 기술은 평행 그리퍼를 사용할 수 있고 제 2 파지 기술은 흡입 그리퍼를 사용할 수 있다. 일부 실시예에서, 그리퍼의 유형은 픽 앤드 플레이스 동작 동안 그리퍼-유형 간에 자율적으로 전환된다. 파지 기술은 형태부의 다른 부분에서 사용될 수 있다. 예컨대, 평행 파지 기술은 형태부의 상단, 중간 또는 하단 부분에 사용될 수 있다. 제어기(106)는 형태부와 관련된 파지 방식의 각각에 대한 대응하는 점수를 결정한다. 일부 실시예에서, 물체는 복수의 형태부와 관련된다. 제어기(106)는 복수의 형태부들 각각에 대한 하나 이상의 파지 기술을 결정할 수 있고 결정된 파지 기술에 대한 대응하는 점수를 결정할 수 있다.
파지 방식과 관련된 점수는 파지 방식이 형태부의 성공적인 파지를 초래할 확률에 기초할 수 있다. 파지 방식이 형태부를 성공적으로 파지할 확률은 환경에 대한 전후배경(contextual) 정보, 환경에 대한 이력 파지 정보, (다른 물체와의 충돌을 피하기 위해) 로봇 암이 형태부를 파지하는 각도, (그리퍼 상단에서 충돌을 방지하기 위해) 로봇 암이 형태부를 파지하는 높이, 파지 폭, 파지 점에서 표면 법선 배향, 파지될 수 있는 형태부의 양, 재료 특성 등과 같은 하나 이상의 인자에 기초할 수 있다. 환경에 대한 전후배경 정보는 물체 근처 또는 인접한 다른 물체의 존재, 물체 근처 또는 인접한 다른 물체가 로봇 암이 파지하는 능력을 방해하는 정도, 작업공간 영역에 더 많은 물체가 계속 추가되고 있는지 여부 등을 포함한다. 재료 특성은 물체의 질량 중심, 물체의 마찰 특성, 색상, 반사율 등을 포함할 수 있다. 예컨대, 로봇 시스템(101)은 큰 물체가 안정적으로 놓여질 수 있도록 큰 지지 표면을 만들 수 있다. 로봇 시스템(101)이 물체와 놓여진 지지 표면의 마찰 계수가 주어지면 물체가 기울어진 놓여진 지지 표면에서 미끄러질 수 있음을 검출할 때, 로봇 시스템(101)은 충분히 높은 마찰 계수(예: 미끄러지지 않도록)를 갖는 물체를 단지 선택하도록 구성될 수 있다.
제어기(106)는 파지 방식의 각각과 관련된 대응하는 점수에 기초하여 파지 방식들 중 하나를 선택한다. 물체는 어수선한 더미에 놓여진 물체의 이종 집합체일 수 있다. 물체는 크기, 색상, 로봇식, 기하학적 구조, 질감, 강성 등이 다양할 수 있다. 물체는 더미에서 개별적으로 제거된다. 일부 물체는 적어도 부분적으로 가려져 있다. 어수선한 더미에 있는 모든 물체는 선험적으로 알려지지 않았다. 제어기(106)는 가장 높은 점수를 가진 파지 방식을 선택한다. 2개 이상의 파지 방식이 동일한 높은 점수를 갖는 경우, 제어기(106)는 파지 방식들 중 하나를 선택하고 파지 방식과 관련된 형태부를 픽업하고 물체를 드롭 오프 영역으로 이동시킨 다음 다른 파지 방식들과 관련된 잔여 물체를 선택한다.
제어기(106)는 엔드 이펙터(108)가 물체와 관련된 형태부를 파지하게 한다. 도시된 예에서, 제어기(106)는 엔드 이펙터(108)가 물체(112)를 파지하게 하였다. 제어기(106)는 파지 예측 문제를 단순화하기 위해 그리퍼 메커니즘 및 기하학적 구조에 대한 사전 지식을 활용할 수 있다. 예컨대, 엔드 이펙터(108)가 위에서 물체(112)와 같은 물체에 접근할 경우, 제어기(106)는 점 클라우드의 상단 섹션을 분석하여 파지 가능한 돌출부를 식별한다. 일부 실시예에서, 로봇 시스템이 이동함에 따라, 카메라(115, 117)는 더 많은 데이터(예: 더 가까운, 상이한 각도, 상이한 조명, 반사율 등)를 수집하고 로봇 시스템(101)은 엔드 이펙터(108)가 신규 데이터에 기초하여 물체를 파지하게 하는 방법을 조정한다.
물체에 대한 파지 점은 물체의 메쉬화 또는 분할된 버전을 사용하여 결정될 수 있다. 파지하고자 하는 물체의 근접한 근사치를 만들고 라이브러리 또는 기계 학습 방법과 일치하는 모델을 사용하여 물체에 대한 최적의 파지 위치를 결정한다. 파지 점은 순위가 매겨진다. 제어기(106)는 엔드 이펙터(108)가 파지 점들 중 하나에서 물체를 파지하게 한다.
일부 실시예에서, 압력 및/또는 진공 센서는 파지 품질을 평가하기 위해 누출을 검출하는 데 사용된다. 예컨대, 로봇 시스템(101)은 찢어진 플라스틱 백을 픽업하기 위해 엔드 이펙터(108)로서 흡입 그리퍼를 사용할 수 있다. 압력/진공 정보는 로봇 시스템(101)에 의해 이러한 품목에 대한 픽업 동작을 중단하는 데 사용될 수 있으며, 이는 흡입 그리퍼의 손상을 방지하고 및/또는 이러한 플라스틱 백 내부의 패킹된 제품을 오염시킬 수 있다.
엔드 이펙터(108)는 물체, 본 예에서는 물체(112)를 컨베이어(118)와 같은 드롭 오프 영역으로 물체를 이동시킨다. 엔드 이펙터(108)는 물체를 드롭 오프 영역에 내려 놓는다. 로봇 시스템(101)은 로봇 시스템(101)이 물체가 놓여져야 한다고 생각하는 위치 근처에 물체를 내려 놓기 위해 복수의 카메라들을 사용할 수 있다. 로봇 시스템(101)은 낙하 위치에서 물체를 낮추고 로봇 시스템(101)이 드롭 오프 영역의 힘이 물체에 대해 밀어내는 것을 느낄 때를 검출할 수 있다. 로봇 시스템(101)이 드롭 오프 영역에 도달했음을 검출할 때, 로봇 시스템(101)은 엔드 이펙터(108)를 개방하거나 물체를 부드럽게 아래로 내려 놓기 위해 흡입을 중단한다. 엔드 이펙터(108)를 개방하는 동안, 로봇 시스템(101)은 내려 놓는 힘(placement force)을 제어하기 위해 위 또는 아래로 이동할 수 있다(때로는 접촉하는 동안 그리퍼를 개방하면 물체가 부숴질 수 있음). 이는 로봇 시스템(101)이 물체를 쌓거나 놓는 표면 높이 추정치가 오류가 발생하기 쉽거나 모르는 경우, 놓는 높이를 동적으로 조정할 수 있게 한다. 이는 또한 다른 물체가 방해가 될 때 도움이 된다. 일부 실시예에서, 로봇 시스템(101)은 굴러 떨어질 수 있는 임의의 물체가 드롭 오프 영역에 놓여지는지 여부가 결정된다. 굴러갈 수 있는 물체가 없는 경우, 제어기(106)는 로봇 암(102) 및 엔드 이펙터(108)를 제어하여 이미 드롭 오프 영역에 있는 물체를 더 가깝게 밀어 하나 이상의 다른 물체를 내려 놓기 위한 공간이 생성되도록 할 수 있다.
다양한 실시예에서, 로봇 암(102), 엔드 이펙터(108), 및 제어기(106)를 포함하는 로봇 시스템(101)은 원격조작에 의한 개입을 자동으로 유도한다. 일부 실시예에서, 도 1에 도시된 픽 앤드 플레이스 동작을 수행하는 과정에서, 로봇 시스템(101)이 로봇 시스템(101)이 동작을 (추가로) 수행하기 위한 (다음) 방식을 결정할 수 없는 상태에 도달하면, 로봇 시스템(101)은 원격조작자(이 예에서)가 원격조작을 통해 지원하도록 유도한다.
도시된 예에서, 제어기(106)는 네트워크(124)를 통해 원격조작 컴퓨터(126)에 연결된다. 일부 실시예에서, 원격조작 컴퓨터(126)는 예컨대, 상위 레벨 명령을 네트워크(124)를 통해 제어기(106)에 전달함으로써 자율 모드에서 로봇 시스템(101)의 동작에 관여할 수 있다. 다양한 실시예에서, 제어기(106) 및 원격조작 컴퓨터(126) 중 하나 또는 둘 모두는 예컨대 로봇 시스템(101)이 (완료) 동작의 다음 작업이나 단계를 수행할 수 있는 방식이 없는 상태에 도달하면 원격조작에 의한 개입을 유도할 수 있다.
예컨대, 도 1을 더 참조하면, 물체(114)가 로봇에 삼각형 형태를 제공하는 배향으로 평평한 측부들 중 하나에 낙하 및 착지된 경우, 일부 실시예에서 로봇 시스템(101)은 물체(114)를 픽업 위해 사용 가능한 방식을 가질 수 없고 및/또는 물체(114)를 픽업 위해 구성된 시도 횟수를 초과하거나 소진했을 수 있다. 응답 시에, 원격조작자(130)는 원격조작을 통해 개입하도록 유도될 수 있고 로봇의 작동을 제어하기 위해 수동 입력 장치(128)를 사용할 수 있다. 예컨대, 원격조작자(130)는 물체(114)를 픽업하고 컨베이어 벨트(118)에 물체를 놓기 위해 로봇 시스템(101)을 조작할 수 있다. 즉, 자율 로봇 시스템(101)이 물체(114)를 픽업 위해 사용 가능한 방식을 가질 것으로 예상되는(또는 더 그럴 가능성이 있는) 물체(114)의 배향을 변경하기 위해 로봇 시스템(101)을 사용할 수 있다.
도시된 예에서, 원격조작은 사람 조작자(130)에 의한 수동 입력 장치(128), 예컨대 햅틱 입력 장치(haptic input device)의 조작을 통해 수행될 수 있다. 사람 조작자(130)(때때로 원격조작자로 지칭됨)는 원격조작을 시작하기 위해 원격조작 컴퓨터(126)를 포함하고 및/또는 이와 관련된 디스플레이 장치를 통해 표시되는 정보에 의해 유도된다. 하나 이상의 센서(134)로부터의 데이터는 네트워크(124) 및 원격조작 컴퓨터(126)를 통해 사람 조작자(130)에 제공될 수 있다. 일부 실시예에서, 센서(134)는 로봇 상의 카메라(미도시) 또는 카메라(115, 117)를 포함하고 원격조작자(130)에 표시되고 원격조작을 통해 동작 또는 그 일부의 진행을 수행하고 및/또는 완료하는 데 사용되는 비디오 피드를 생성하도록 구성된다. 다양한 실시예에서, 카메라는 아날로그 RF 기초 통신, WiFi, 블루투스 및 Sub GHz 중 하나 이상을 제한 없이 포함하는 저지연, 고 처리량 연결로 접속된다. 일부 실시예에서, 상이한 유형의 카메라의 혼합이 사용된다. 예컨대, 2개의 RGB 시각 카메라, 4개의 깊이 카메라, 2개의 IR 카메라 등과 같은 다른 통신 속도, 대역폭 및/또는 기타 특성을 가진 카메라가 사용될 수 있다.
다양한 실시예에서, 원격조작은 다양한 상이한 센서(134)를 사용하여 수행될 수 있다. 일부 실시예에서, 이들은 로봇 시스템(101)이 "고착(stuck)"되었는지 여부를 결정하도록 로봇 시스템(101)을 안내할 수 있고/있거나 원격조작을 단순화할 수 있다. 일부 실시예에서, 센서는 원격조작 양식을 직접적인 햅틱 제어로부터 추상적인 실행 명령[마우스로 선택하기 위해 물체를 클릭하거나 오디오 전사 장치에 "개방 쉘프(open shelf)"라고 말하는 것과 같은]으로 점진적으로 전환하는 것을 돕는다.
다양한 실시예에서 사용되는 센서(134)의 예는 환경과의 상호작용 및 특정 "고착" 시나리오, 및/또는 로봇 시스템(101)(또는 원격조작자) 부근에 미지의 에이전트(agent)의 존재를 검출하도록 구성된 디지털 스위치를 포함한다. 추가 예는 파지와 같은 동작의 성공 또는 실패를 결정하는 손 또는 로봇의 힘 또는 압력 센서를 포함한다. 일련의 실패 후, 로봇 시스템(101)은 그것이 "고착"되었다고 결정한다. 다른 예는 로봇 관절 상의 위치 센서와 같은 하나 이상의 센서로서, 로봇 시스템(101)은 계획된 및/또는 그렇지 않으면 예상된 이동 궤적이 정확하게 따르고 있는지 여부를 알기 위해 사용될 수 있다. 그것이 예상 궤적을 정확하게 따르지 않을 때, 환경(100)과 접촉했을 가능성이 있고 로봇 시스템(101)은 그것이 "고착"되어 사람 개입을 호출할 필요가 있다고 결론지도록 프로그래밍될 수 있다.
복수의 카메라들을 포함하는 비전 시스템은 다중 모드 수단[예: RGB 인스턴스 추적(instance tracking), RGB 형태부 일치, RGB 광학 흐름, 점 클라우드 일치 등]을 통해 작업공간 영역의 각 물체를 추적하고 로봇 시스템(101)이 선택해야 하는 물체를 추적하기 위해 헝가리 페어 일치(Hungarian pair matching)와 같은 방법을 활용하도록 구성된다. 로봇 시스템(101)은 속도, 낙하/미끄러질 가능성, 및 운동 궤적과 같은 각각의 추적된 물체의 상태를 추정하도록 구성된다. 로봇 시스템(101)은 더 높은 정확도로 물체 상태를 갱신하기 위해 운송 시스템 및 센서(134)의 현재 속도 및 크기와 같은 다른 알려진 정보를 사용할 수 있다. 결정된 물체 상태는 로봇 시스템(101)에 의해 어디에서 어떤 물체를 선택해야 하는지, 그리고 물체를 어디에/언제/어떻게 내려 놓아야 할지에 대한 정보에 입각한 결정을 내리는 데 사용될 수 있다. 예컨대, 로봇 시스템(101)은 로봇 암(102)의 이동 시간 및 이동하는 물체의 속도를 보상하기 위해 미래에 추정된 물체 위치로부터 픽업(파지) 및 가능하게는(이동하는 동안에도) 더 안정적인 물체를 선택하고 픽업할 수 있다. 로봇 시스템(101)은 환경(100)으로부터 추정된 초기 속도로 물체를 내려 놓음으로써 물체를 낙하시키지 않고 물체가 굴러가게 하지 않고 더 안정적으로 이동하는 플랫폼 드롭 오프 영역에 물체를 놓을 수 있다. 로봇 시스템(101)은 또한 드롭 오프 영역(118)에서 물체를 내려 놓을 충돌 없는 영역을 선별할 수 있다. 충돌 영역은 추적된 물체의 추정된 궤적에서 결정될 수 있다. 복수의 카메라들와 관련된 데이터를 사용하여, 로봇 시스템(101)은 파지한 물체의 형상 및 환경(100)을 이해할 수 있다. 이는 로봇 시스템(101)이 픽업된 물체와 환경(100) 사이의 충돌을 피할 궤적을 지능적으로 계획할 수 있게 한다.
일부 실시예에서, 복수의 로봇 시스템은 물체를 픽 앤드 플레이스하기 위해 함께 작동하고 있다. 복수의 로봇 시스템을 사용하면 시스템의 전체 처리량이 증가할 수 있다.
도 2는 일부 실시예에 따라 물체를 픽 앤드 플레이스하기 위한 공정을 예시하는 흐름도이다. 일부 실시예에서, 공정(200)은 로봇 시스템(101)과 같은 로봇 시스템에 의해 구현된다.
202에서, 작업공간 영역에 위치한 하나 이상의 물체와 관련된 이미지 데이터와 같은 센서 데이터가 수신된다. 일부 실시예에서, 센서 데이터는 복수의 카메라들에 의해 생성된다. 복수의 카메라들은 서로 다른 시점에서 하나 이상의 물체를 관측하고 검출하도록 구성된다. 일부 실시예에서, 하나 이상의 카메라는 하나 이상의 물체의 하나 이상의 점 클라우드를 생성한다. 복수의 점 클라우드가 생성되면, 복수의 점 클라우드가 병합된다. 다양한 실시예에서, 하나 이상의 물체는 어수선한 더미에 놓여진 복수의 물체, 이격된 복수의 물체, 및/또는 복수의 물체 중 다른 하나 이상의 물체에 의해 시야에서 가려지는 복수의 물체를 포함할 수 있다.
기하학적 구조 정보는 복수의 물체 각각에 대해 결정된다. 기하학적 구조 정보는 복수의 카메라들 중 하나 이상과 관련된 데이터로부터 획득된 점 클라우드 정보에 기초하여 결정될 수 있다.
204에서, 하나 이상의 물체에 대해 하나 이상의 잠재적으로 파지 가능한 형태부가 결정된다. 복수의 형태부 각각과 관련된 대응하는 기하학적 구조 정보는 파지 방식이 알려진 기하학적 구조의 라이브러리와 비교될 수 있다. 예컨대 유사성 임계값 내에서 결정된 형태부의 기하학적 구조와 가장 유사한 기하학적 구조와 관련된 방식이 선택될 수 있다. 일부 실시예에서, 물체는 단일 형태부와 관련된다(예: 종이 타월의 롤은 실린더에 대응한다). 일부 실시예에서, 물체는 복수의 하위-세그먼트(본원에서 하위-물체로도 지칭됨)로 분할되고 복수의 하위-세그먼트 각각에 대한 대응하는 형태부가 결정된다(예: 골프 클럽은 몸체 세그먼트 및 헤드 세그먼트를 포함함).
작업공간 영역 또는 모서리의 에지 근처에 있는 물체는 물체가 선택되는 위치 및/또는 방법에 대한 물리적 또는 기타 제한을 가질 수 있다. 일부 실시예에서, 최적은 아니지만 실현 가능한 픽 각도(pick angle)가 물체와 관련된 환경 경계에 따라 선택될 수 있다. 더 넓은 길이방향 파지가 환경 경계 내에서 엔드 이펙터를 유지할 수 있기 때문에 더 좁은 위도 파지(narrower latitudinal grasp)에 대해 더 넓은 길이방향을 선택할 수 있다.
206에서, 성공적인 파지의 대응하는 점수가 결정된 파지 방식 각각에 대해 결정된다. 로봇 시스템은 물체나 형태부를 파지하기 위해 다른 파지 도구(예: 흡입 그리퍼, 평행 그리퍼, 다른 엔드 이펙터 등)를 사용하도록 구성될 수 있다. 로봇 시스템은 물체의 다른 위치에서 물체를 파지하기 위해 파지 도구를 사용할 수 있다. 예컨대, 파지 도구는 물체의 상단 부분, 중간 부분 또는 하단 부분에서 물체를 파지하는 데 사용될 수 있다. 일부 파지 도구는 특정 형상을 파지할 때 다른 파지 도구보다 더 성공적일 수 있다.
형태부의 성공적인 파지의 점수는 파지 방식이 성공적인 파지를 초래할 확률에 기초할 수 있다. 파지 도구(여러 도구가 사용 가능한 실시예에서) 및 파지 위치의 상이한 조합에 대해 확률이 결정된다. 파지 방식이 물체를 성공적으로 파지할 확률은 환경에 대한 전후배경 정보, 환경에 대한 이력 파지 정보, (다른 물체와의 충돌을 피하기 위해) 로봇 암이 물체를 파지하는 각도, (그리퍼 상단에서 충돌을 방지하기 위해) 로봇 암이 물체를 파지할 높이, 파지 폭, 파지 점에서 표면 법선 방향, 파지할 수 있는 물체의 양 등과 같은 하나 이상의 인자에 기초하여 할 수 있다. 환경에 대한 전후배경 정보는 물체 근처 또는 인접한 다른 물체의 존재, 물체 근처 또는 인접한 다른 물체가 물체를 파지하는 로봇 암의 능력을 방해하는 정도, 더 많은 물체가 작업공간 영역에 계속 추가되고 있는지 여부 등을 포함한다.
208에서, 결정된 대응하는 점수에 기초하여 결정된 파지 방식들 중 하나가 시도되도록 선택된다. 물체/형태부 및 대응 파지 방식은 대응하는 점수에 기초하여 순위가 매겨진다. 복수의 물체 중 가장 높은 점수를 받은 물체/형태부가 파지되도록 선택된다. 복수의 잠재적 파지가 동일한 점수를 갖는 경우, 복수의 파지들 중 하나가 선택된다. 파지된 물체가 이동된 후, 같은 점수를 가진 다른 파지들 중 하나가 선택된다.
복수의 물체들 중 하나의 물체를 선택하고, 파지하고, 이동하여 드롭오프 영역에 내려 놓는 경우, 그 다음으로 높은 점수를 가진 물체가 시도되도록 선택된다.
210에서, 선택된 파지가 수행/시도된다. 복수의 카메라들로부터의 시각적 데이터를 사용하는, 로봇 시스템은 파지된 물체가 이동되었는지를 결정할 수 있다. 그렇지 않은 경우, 로봇 시스템은 파지가 실패한 것으로 결정한다. 일부 실시예에서, 엔드 이펙터는 형태부가 파지되었는지 여부를 결정하기 위해 압력 센서를 갖는다. 일부 실시예에서, 엔드 이펙터는 형태부가 파지되었는지 여부를 결정하기 위해 커패시턴스를 사용하여 물체의 피부 표면의 변형을 검출한다. 일부 실시예에서, 엔드 이펙터는 흡입 그리퍼이고 로봇 시스템은 형태부가 파지되었는지 여부를 결정하기 위해 압력 센서를 사용하여 흡입 압력 변화를 검출한다.
일부 실시예에서, 표면에 매우 가깝거나 핀치(pinch)(예: 평평한 천)를 필요로 하는 얇은 물체 또는 파지 형태부의 경우, 로봇 시스템은 엔드 이펙터가 특정 접촉력을 감지하고 제어함으로써 픽 표면(pick surface)과 접촉한다는 것을 보장할 수 있다. 이 접촉은 또한 로봇 시스템의 교정을 개선하는 데 사용할 수 있는 픽 표면의 단일 점 위치에 대한 정확한 추정치를 로봇 시스템에 제공한다.
212에서, 선택된 파지와 관련된 물체는 작업공간 영역으로부터 드롭 오프 영역으로 이동된다. 214에서, 선택된 파지와 관련된 물체가 작업공간 영역으로부터 드롭 오프 영역으로 물체를 이동시키는 동안 낙하되었는지 여부가 결정된다. 물체는 로봇 시스템이 물체와 관련된 형태부가 파지되었는지의 여부를 결정하기 위해 사용하는 엔드 이펙터에 포함된 센서의 센서 측정(예: 압력, 힘, 커패시턴스 등)에 기초하여 낙하된 것으로 결정될 수 있다. 센서 측정치를 임계값과 비교하여 물체가 낙하되었는지 여부를 결정할 수 있다.
물체가 낙하된 경우, 공정(200)은 208로 되돌아간다. 물체가 낙하되지 않으면, 공정(200)은 216으로 진행한다.
216에서, 물체는 드롭 오프 영역에 놓여진다. 엔드 이펙터가 드롭 오프 영역과 관련된 경계와 충돌하는 것을 방지하는 방식으로 물체를 내려 놓을 수 있다. 일부 실시예에서, 물체는 드롭 오프 영역의 다른 물체와 함께 어수선하게 놓여진다. 로봇 시스템은 드롭 오프 영역에 물체를 무작위로 내려 놓을 수 있다. 그 다음 로봇 시스템은 그리퍼에 있는 힘 센서를 사용하여 로봇 시스템이 보호 정지를 수행하지 않고 물체를 클러터(clutter)에 부드럽게 놓을 수 있다. 로봇 시스템은 물체의 더 나은 분포를 생성하기 위해 작은 영역 내의 드롭 오프 영역에 임의의 섭동(perturbation)을 추가할 수 있다. 로봇 시스템은 단단한 슬롯 방식을 실현하기 위해 힘 센서를 사용하여 드롭 오프 영역의 박스에 물체를 단단히 패킹할 수 있다.
일부 실시예에서, 물체는 드롭 오프 영역에서 다른 물체와 이격되어 놓여진다. 로봇 시스템은 드롭 오프 영역에서 놓여지는 공간을 복수의 하위 영역으로 분할하고 선택된 물체를 하위 영역 중 하나에 놓을 수 있다. 각 하위 영역들 사이에는 완충 영역이 있을 수 있다. 일부 실시예에서, 완충 영역은 조정 가능하다.
일부 실시예에서, 로봇 시스템과 관련된 비전 시스템은 물체를 내려놓는 방법을 결정하도록 구성된다. 예컨대, 어떤 물체는 단단하지 않고 물체(예: 천이나 꼭 껴안고 싶은 장난감)와 관련된 범위는 물체를 파지하고 이동한 후에 변한다. 비전 시스템은 물체를 손상시키거나 물체가 엉키거나 좋지 않은 상태로 떨어지는 원인이 될 수 있는 높이에서 물체가 낙하되는 것을 방지하기 위해 물체를 내려놓는 방법을 선별하기 위해 범위와 재료 정보를 결정하도록 구성된다.
로봇 시스템은 파지/픽 동작 동안 다양한 시간에 점 클라우드 정보를 비교할 수 있다. 로봇 시스템과 관련된 비전 시스템은 초기 점 클라우드를 결정할 수 있고, 물체를 파지하고 이동함에 따라 초기 점 클라우드와 현재 점 클라우드의 차이를 결정할 수 있다. 결정된 차이가 물체와 관련된 범위가 임계값 이상으로 변경됨을 나타내는 경우, 로봇 시스템은 물체가 비강성 물체라고 결정할 수 있다. 물체를 비강성 물체로 결정하는 것에 응답하여, 로봇 시스템은 물체가 강성 물체인 경우와는 상이한 내려 놓는 방식을 구현할 수 있다. 선택된 물체의 강성화에 따라, 물체는 더 빠르게 이동될 수 있고 물체가 놓여지는 방식은 로봇 시스템의 픽 속도/처리량을 증가시키기 위해 더 적극적인 방식으로 낙하될 수 있다. 결정된 차이가 물체와 관련된 범위가 임계값 미만으로 변경됨을 나타내는 경우, 로봇 시스템은 물체가 강성 물체라고 결정할 수 있다. 물체가 놓여지는 방식은 물체의 바닥 표면이 드롭 오프 영역에 가까워지도록 제어되어 물체가 깨지거나, 구르거나, 및/또는 얽힌 구성으로 종료되는 것을 방지하도록 상이할 수 있다.
드롭 오프 영역의 점 클라우드 정보는 물체가 놓여질 충분한 개방 공간이 있는 위치를 결정하는 데 사용될 수 있다. 점 클라우드 정보는 패킹 효율성을 최대화하기 위해 각 물체가 놓여져야 하는 위치를 결정하는 데 사용할 수도 있다.
218에서, 작업공간 영역에 더 많은 물체가 위치하는지 여부가 결정된다. 작업공간 영역에 더 많은 물체가 있는 경우, 공정(200)은 단계 208로 돌아간다. 작업공간 영역에 더 이상 물체가 없는 경우, 공정(200)이 종료된다.
도 3은 일부 실시예에 따라 물체를 파지하고 이동시키기 위한 공정을 예시하는 흐름도이다. 일부 실시예에서, 공정(300)은 로봇 시스템(101)과 같은 로봇 시스템에 의해 구현된다. 일부 실시예에서, 공정(300)은 공정(200)의 단계(210 및 212)의 일부 또는 전부를 수행하도록 구현된다.
302에서, 물체와 관련된 형태부가 파지된다. 로봇 시스템의 제어기는 엔드 이펙터가 물체와 관련된 형태부를 파지하도록 한다. 엔드 이펙터는 힘 센서, 압력 센서, 커패시턴스 센서 등과 같은 하나 이상의 센서를 포함할 수 있다. 물체와 관련된 형태부는 결정된 최적의 파지 위치에서 파지될 수 있다. 최적의 파지 위치는 로봇 시스템의 하나 이상의 카메라로부터 수신된 시각적 데이터로부터 결정되는 메시화 또는 분할된 버전의 물체를 사용하여 결정될 수 있다.
일부 실시예에서, 시각적 및/또는 촉각적 정보는 주름과 같은 물체의 질감을 검출하는 데 사용된다. 로봇 시스템은 주름진 영역에서 물체를 픽하기 위해 흡입 그리퍼를 사용하는 것을 피하는 것과 같이 고품질 픽 점(예: 성공적인 파지의 확률이 임계값보다 큰 경우)을 선별하기 위해 시각 및/또는 촉각 정보를 사용할 수 있다.
304에서, 파지가 성공적인지 여부가 결정된다. 일부 실시예에서, 로봇 시스템은 컴퓨터 비전을 사용하여 물체가 이동했는지, 즉 파지가 성공적인지를 결정한다. 일부 실시예에서, 로봇 시스템은 힘 센서를 사용한다. 힘 센서에 의해 검출된 질량이 증가하고 이 증가가 물체의 부피/외관에 기초하여 한 정적 임계값 또는 일반적인 추정치와 다른 경우, 로봇 시스템은 잘못된 물체를 파지했다고 결정하고 물체를 낙하시킨다. 일부 실시예에서, 로봇 시스템의 엔드 이펙터는 압력 센서를 갖거나 물체가 파지되었는지 여부를 결정하기 위해 커패시턴스를 사용하여 물체의 피부 표면의 변형을 감지한다. 센서의 출력은 파지 임계값과 비교되어 물체와 관련된 형태부가 파지되었는지 여부가 결정된다. 일부 실시예에서, 엔드 이펙터의 전기 또는 용량성 센서는 엔드 이펙터의 완전한 폐쇄 접촉을 표시하는 데 사용된다. 이는 엔드 이펙터가 물체를 파지하지 않았다는 것을 나타낸다. 일부 실시예에서, 로봇 시스템은 물체를 픽하고 압력 센서를 사용하여 흡입-압력 변화를 검출하기 위해 흡입 그리퍼 엔드 이펙터를 사용한다. 로봇 시스템은 압력 센서의 출력에 기초하여 물체가 파지되었는지 여부를 결정할 수 있다. 일부 실시예에서, 로봇 시스템은 센서와 컴퓨터 비전의 조합에 기초하여 물체를 파지했는지 여부가 결정된다. 검출 오류율을 줄이기 위해 투표 시스템이 사용될 수 있다. 대부분의 검출 방법이 물체를 파지했다고 결정하면 로봇 시스템은 물체와 관련된 형태부가 파지된 것으로 결정할 수 있다.
일부 실시예에서, 시각적 정보 및 손가락 끝 센서 정보는 부드럽게 놓는 것을 보장하기 위해 물체의 초기 파지 후에 물체가 미끄러지고 이동되었는지를 결정하기 위해 결합된다. 결합된 정보는 픽/파지로부터 놓는 것으로 이동하는 동안 물체가 미끄러지는 시기를 결정하는 데 사용될 수 있다. 물체가 미끄러진 것으로 결정되는 경우, 드롭 오프 영역에서 물체가 충돌하는 것을 방지하기 위해 물체의 범위를 다시 계산할 수 있다.
로봇의 기하학적 모델 및 센서 상태 정보는 로봇 암 및 엔드 이펙터의 3D 구성을 결정하는 데 사용될 수 있다. 3D 물체와 관련된 점 클라우드 또는 RGB 픽셀이 필터링되어 성공적으로 선택된 물체만 남거나 파지에 실패한 경우, 아무것도 남지 않을 수 있다.
파지가 성공한 경우, 공정(300)은 306으로 진행한다. 파지가 성공하지 못한 경우, 공정(300)은 308로 진행한다. 306에서, 물체는 드롭 오프 영역으로 이동된다. 308에서, 파지 임계 횟수의 시도가 수행되었는지 여부가 결정된다. 임계 수의 파지 시도가 수행된 경우, 공정(300)은 312로 진행한다. 임계 수의 파지 시도가 수행되지 않으면, 공정(300)은 310으로 진행한다.
310에서, 동일한 파지 기술 또는 다른 파지 기술이 구현된다. 물체의 형태부는 복수의 파지 기술과 관련될 수 있다. 각 파지 기술은 대응하는 점수와 관련된다. 복수의 파지 기술 중 가장 높은 점수를 받은 파지 기술이 초기에 선택된다. 파지 기술이 실패한 경우, 다음으로 높은 점수를 받은 파지 기술이 시행될 수 있다. 일부 실시예에서, 동일한 파지 기술이 다시 시도된다.
312에서, 다음 형태부가 선택된다. 복수의 형태부를 갖는 복수의 물체가 작업공간 영역에 위치할 수 있다. 복수의 형태부 각각은 성공적인 파지의 대응하는 점수를 갖는다. 형태부는 대응하는 점수에 기초하여 선택된다. 다음 형태부는 대응하는 점수에 기초하여 선택된다. 일부 실시예에서, 다음 형태부는 상이한 물체와 관련된다. 일부 실시예에서, 다음 형태부는 동일한 물체와 관련된다. 다음 형태부는 이전에 선택된 형태부보다 점수가 낮으나, 복수의 형태부 중 나머지 형태부와 동일하거나 더 높은 점수를 갖는다.
도 4는 일부 실시예에 따라 형태부를 파지하기 위한 공정을 예시하는 흐름도이다. 도시된 예에서, 공정(400)은 로봇 시스템(101)과 같은 로봇 시스템에 의해 구현될 수 있다. 일부 실시예에서, 공정(400)은 공정(200)의 단계(210) 또는 공정(300)의 단계(302)의 일부 또는 전부를 수행하도록 구현된다.
402에서, 형태부와 관련된 기하학적 구조에 대한 파지 방식이 결정된다. 일부 실시예에서, 형태부는 결정된 형상과 관련된다. 일부 실시예에서, 물체 또는 형태부는 복수의 하위-세그먼트로 분할되고 복수의 하위-세그먼트 각각에 대한 대응하는 형상이 결정된다. 형태부에 대한 파지 기술은 형태부의 기하학적 구조에 기초하여 상이할 수 있다. 예컨대, 구형 형상을 갖는 형태부에 대한 파지 기술은 직사각형 프리즘 형상을 갖는 형태부의 파지 기술과 상이할 수 있다.
로봇 시스템은 형태부를 하나 이상의 파지 방식과 관련시키는 데이터 구조를 저장할 수 있다. 예컨대, 데이터 구조는 제1 형태부를 제1 파지 방식 및 제2 파지 방식과 관련시키는 엔트리(entry)를 포함할 수 있다. 파지 방식은 형태부의 상이한 부분에 적용될 수 있다. 데이터 구조는 형태부를 하나 이상의 파지 방식 및 형태부의 하나 이상의 부분과 관련시키는 엔트리를 포함할 수 있다. 예컨대, 데이터 구조는 제1 형태부를 형태부의 상단 부분에서 제1 파지 방식과 관련시키는 제1 엔트리, 제1 형태부를 형태부의 중간 부분에서 제1 파지 방식과 관련시키는 제2 엔트리, 제 1 형태부를 형태부의 하단 부분에서 제 1 파지 방식과 관련시키는 제3 엔트리, 제 1 형태부를 형태부의 상단 부분에서 제 2 파지 방식과 관련시키는 제4 엔트리, 제 1 형태부를 형태부의 중간 부분에서 제 2 파지 방식과 관련시키는 제5 엔트리, 제 1 형태부를 물체의 하단 부분에서 제 2 파지 방식과 관련시키는 제6 엔트리 등을 포함할 수 있다.
일부 실시예에서, 하나 이상의 다른 물체가 엔드 이펙터가 특정 위치에서 형태부를 파지하는 것을 방지하기 때문에 형태부와 관련된 파지 방식 중 일부는 이용 불가능하다. 로봇 시스템은 작업공간 영역에 위치한 하나 이상의 물체의 현재 놓는 것에 기초하여 물체와 관련된 형태부에 대한 하나 이상의 사용 가능한 파지 방식을 결정하도록 구성된다(예: 파지 방식 중 일부는 필터링됨).
404에서, 성공적인 파지의 대응하는 점수가 파지 방식들 각각에 대해 결정된다. 형태부의 성공적인 파지의 점수는 파지 방식이 형태부의 성공적인 파지를 초래할 확률에 기초할 수 있다. 파지 도구와 파지 위치의 다양한 조합에 대해 확률이 결정된다. 파지 방식이 형태부를 성공적으로 파지할 확률은 환경에 대한 전후배경 정보, 환경에 대한 이력 파지 정보, (다른 물체와의 충돌을 피하기 위해) 로봇 암이 형태부를 파지하는 각도, (그리퍼 상단에서 충돌을 방지하기 위해) 로봇 암이 형태부를 파지할 높이, 파지 폭, 파지 점에서 표면 법선 방향, 파지할 수 있는 형태부의 양 등과 같은 하나 이상의 인자에 기초하여 할 수 있다. 환경에 대한 전후배경 정보는 물체 근처 또는 인접한 다른 물체의 존재, 물체 근처 또는 인접한 다른 물체가 형태부를 파지하는 로봇 암의 능력을 방해하는 정도, 더 많은 물체가 작업공간 영역에 계속 추가되고 있는지 여부 등을 포함한다.
406에서, 형태부와 관련된 기하학적 구조에 대해 가장 높은 점수를 갖는 파지 방식이 선택된다.
도 5는 일부 실시예에 따라 파지 기술을 선택하기 위한 공정을 예시하는 흐름도이다. 도시된 예에서, 공정(500)은 로봇 시스템(101)과 같은 로봇 시스템에 의해 구현될 수 있다. 일부 실시예에서, 공정(500)은 공정(400)의 단계(402) 중 일부를 수행하도록 구현된다.
하나 이상의 카메라의 시각적 데이터는 물체의 경계 중 하나 이상이 결정되도록 하는 데이터를 제공할 수 있다. 예컨대, 제1 카메라는 제1 각도로 물체를 향하고 있을 수 있다. 제1 카메라는 물체의 높이 및 폭에 대한 정보는 제공할 수 있지만, 물체의 깊이 정보는 제공할 수 없다. 제2 카메라는 제2 각도로 물체를 향하고 있을 수 있다. 제2 카메라는 물체의 깊이 및 높이에 대한 정보는 제공할 수 있지만, 물체의 폭에 대한 정보는 제공할 수 없다. 복수의 카메라들로부터 수신된 시각적 데이터는 물체와 관련된 경계 정보(추정, 근사 또는 정확한)를 결정하기 위해 병합될 수 있다.
502에서, 물체와 관련된 최소 경계가 결정된다. 물체의 최소 경계는 물체가 특정 치수에서 가질 수 있는 최소값에 대응한다.
504에서, 물체와 관련된 최대 경계가 결정된다. 물체의 최대 경계는 물체가 특정 치수에서 가질 수 있는 최대값에 대응한다. 물체의 최대 경계는 물체가 특정 치수에서 가질 수 있는 최대값에 대응한다.
506에서, 결정된 최소 경계 및 결정된 최대 경계에 기초하여 물체에 대한 파지 방식이 선택된다. 결정된 최소 경계 및 결정된 최대 경계에 기초하여 물체를 파지하기 위해 복수의 파지 방식이 구현될 수 있다. 예컨대, 물체와 관련된 형태부는 장축 또는 단축을 따라 파지될 수 있다. 엔드 이펙터는 엔드 이펙터의 치수로 인해 장축을 따라 형태부를 파지할 수 없지만, 단축을 따라 형태부를 파지할 수 있다. 이 시나리오에서는 단축을 따라 형태부를 파지하는 파지 방식이 선택된다.
이력 데이터는 파지 방식을 선택하는 데 사용될 수 있다. 예컨대, 유사한 최소 및 최대 경계를 가진 이전 물체의 실제 치수와 이전 물체에 대한 대응하는 파지 방식이 데이터 구조에 저장될 수 있다. 이전 물체의 실제 치수는 로봇 시스템이 물체를 가리지 않은 시야가 있는 영역으로 이동한 후에 결정될 수 있다. 유사한 최소 및 최대 경계를 가진 물체에 대해 이전 물체들 중 하나에 대한 파지 방식이 성공한 경우, 유사한 최소 및 최대 경계를 가진 현재 물체에 대해 성공적인 파지 방식이 선택될 수 있다.
도 6은 일부 실시예에 따라 물체를 파지하고 이동시키기 위한 공정을 예시하는 흐름도이다. 도시된 예에서, 공정(600)은 로봇 시스템(101)과 같은 로봇 시스템에 의해 구현될 수 있다.
작업공간 영역에 위치하는 물체를 보충하거나 드롭 오프 영역으로부터 물체를 제거하기 위해 사람의 상호 작용이 필요할 수 있다. 이러한 상호 작용은 로봇 시스템의 범위 내에 사람을 배치한다. 로봇 시스템의 제어는 작업공간 영역에 사람이 들어가는 것을 검출하고 사람에게 안전한 조건을 만들기 위해 반응할 수 있다.
602에서, 작업공간 영역으로부터 드롭 오프 영역으로 복수의 물체를 픽하고 이동시키는 공정이 시작된다.
604에서, 사람이 작업공간 영역에 위치하는지 여부가 결정된다. 로봇 시스템의 복수의 카메라들 중 하나 이상은 인체 일부를 검출할 수 있다. 일부 실시예에서, 사람은 고해상도 RGB 이미지를 사용하여 검출된다. 일부 실시예에서, 사람은 사람 적외선 신호에 기초한 IR 센서를 사용하여 감지된다. 하나 이상의 검출 소스로부터의 데이터는 작업공간 영역에 사람이 위치할 확률을 결정하는 데 사용될 수 있다. 확률이 검출 임계값을 초과하는 경우, 사람이 작업공간 영역에 있는 것으로 결정된다.
사람이 작업공간 영역에 위치하는 것으로 결정되는 경우, 공정(600)은 606으로 진행한다. 사람이 작업공간 영역에 없는 것으로 결정되는 경우, 공정(600)은 610으로 진행한다.
606에서, 사람이 물체와 관련된 영역에 위치하는지 여부가 결정된다. 작업공간 영역은 복수의 영역으로 구성될 수 있다. 로봇 시스템은 제1 영역으로부터 물체를 픽할 수 있다. 사람이 제1 영역에 있는지 여부가 결정된다.
사람이 물체와 관련된 영역에 위치하지 않는 것으로 결정되는 경우, 공정(600)은 610으로 진행한다. 사람이 물체와 관련된 영역에 위치한다고 결정되는 경우, 공정(600)은 608로 진행한다.
608에서, 다른 영역의 물체가 선택된다. 로봇 시스템은 사람의 부상을 방지하기 위해 물체와 관련된 영역에서 로봇 암의 속도를 늦출 수 있다. 로봇 시스템은 사람의 부상을 방지하기 위해 물체와 관련된 영역에서 로봇 암을 멈출 수 있다. 로봇 시스템이 로봇의 속도를 늦추거나 정지시킨 후, 로봇 시스템은 로봇 암의 궤적이 사람을 피하도록 로봇 암의 궤적을 다른 영역으로 변경할 수 있다. 로봇 시스템은 사람이 사람에게 경고하기 위해 검출된 후 경보(가청 및/또는 시각)를 울릴 수 있다.
610에서, 물체는 드롭 오프 영역으로 이동된다.
도 7은 일부 실시예에 따라 물체를 이동시키기 위한 공정을 예시하는 흐름도이다. 도시된 예에서, 공정(700)은 로봇 시스템(101)과 같은 로봇 시스템에 의해 구현될 수 있다. 일부 실시예에서, 공정(700)은 공정(300)의 단계(304) 중 일부를 수행하도록 구현된다.
사람 조작자 또는 다른 물체가 로봇 시스템 또는 로봇 스탠드의 카메라와 부딪힐 수 있으며, 이는 로봇 시스템이 잘못 교정되게 할 수 있다. 하나 이상의 로봇 시스템이 정상 작동을 수행할 때, 추가 정보(예: 깊이 또는 점 클라우드 데이터)와 함께 로봇 시스템의 여러 기준 마커를 사용하여 고정 카메라, 작업공간 및 로봇 시스템을 연속적으로 공동 위치화할 수 있다. 이러한 연속적인 공동-위치화는 또한 정지/이동 마커 및/또는 정지/이동 카메라의 임의의 조합을 사용하여 수행될 수 있다. 일부 실시예에서, 기준 마커를 사용하지 않고 정상 장면으로부터의 정보를 사용하여 연속적인 공동-위치화가 수행된다. 연속적인 공동-위치화를 통해 카메라 잘못 배치, 센서 드리프트, 작업공간 재배치 등과 같은 오류를 검출하고 수정할 수 있다. 이 교정 방법론을 사용하면, 정상 작동 중에 카메라를 핫 스왑, 추가 또는 제거할 수 있다.
702에서, 카메라의 방향이 검출된다. 아루코(Aruco) 마커는 로봇 시스템의 복수의 카메라들을 정렬하는 데 사용될 수 있다. 로봇 시스템이 물체와 관련된 형태부를 파지하기 전에, 로봇 시스템의 정렬이 점검될 수 있다. 카메라의 배향이 검출되고 카메라의 초기 정렬과 비교된다.
704에서, 임의의 오교정 조건이 충족되었는지 여부가 결정된다. 일부 실시예에서, 복수의 카메라들이 로봇 베이스 위치가 교정된 로봇 베이스 위치로부터 이동한 것을 검출하는 경우, 오교정 조건이 발생한다. 일부 실시예에서, 복수의 카메라들의 핸드 카메라가 하나 이상의 카메라 및/또는 하나 이상의 카메라 스탠드가 이동한 것을 검출한 경우, 오교정 조건이 발생한다. 일부 실시예에서, 로봇 암이 임계 시도 횟수 후에 물체와 관련된 형태부를 파지할 수 없는 경우, 오교정 조건이 발생한다.
오교정 조건 중 임의의 것이 충족된 경우, 공정(700)은 708로 진행한다. 오교정 조건 중 임의의 것이 충족되지 않으면, 공정(700)은 706으로 진행한다.
706에서, 물체는 드롭 오프 영역으로 이동된다.
708에서, 로봇 시스템이 재교정된다. 일부 실시예에서, 로봇 시스템은 작업공간 아루코 마커를 재위치시키기 위해 복수의 카메라들의 핸드 카메라를 사용하여 재교정된다. 일부 실시예에서, 로봇 시스템은 기준 마커(예: Aruco)를 사용하여 카메라-작업공간 변환을 사용하여 재평가함으로써 재교정된다. 일부 실시예에서, 로봇 시스템은 로봇 상의 마커로 재교정된다. 일부 실시예에서, 로봇 시스템은 시드 변환으로서 이전 교정 파라미터를 사용하여 반복적 최근접점(ICP) 알고리즘을 사용함으로써 재교정된다. 일부 실시예에서, 로봇 시스템은 손-눈을 사용하여 재교정된다.
도 8은 일부 실시예에 따라 로봇 시스템의 동작을 갱신하기 위한 공정을 예시하는 흐름도이다. 도시된 예에서, 공정(800)은 로봇 시스템(101)과 같은 로봇 시스템에 의해 구현될 수 있다.
802에서, 작업공간 영역에서 하나 이상의 물체가 검출된다. 804에서, 하나 이상의 검출된 물체 중 하나가 작업공간 영역의 신규 물체인지 여부가 결정된다. 하나 이상의 검출된 물체 중 하나가 작업공간 영역의 신규 물체가 아닌 경우, 공정(800)은 806으로 진행한다. 하나 이상의 검출된 물체 중 하나가 작업공간의 신규 물체인 경우, 공정(800)은 808로 진행한다. 806에서, 로봇 시스템의 동작은 현재 구성에 따라 유지된다. 808에서, 로봇 시스템의 동작이 갱신된다. 일부 실시예에서, 작업공간 영역의 장면은 신규 물체를 포함하도록 재계산된다. 일부 실시예에서, 신규 물체가 사람일 때 장면이 재계산된다. 일부 실시예에서, 작업공간 영역의 장면은 하나 이상의 기존 물체 및 신규 물체와 함께 어떤 것이 변경될 때 재계산된다.
도 9는 일부 실시예에 따라 흡입 기초 엔드 이펙터를 예시하는 블록도이다. 다양한 실시예에서, 도 9의 로봇 암 엔드 이펙터(900)는 도 1의 엔드 이펙터(108)를 구현하는 데 사용될 수 있다.
도시된 예에서, 엔드 이펙터(900)는 회전 가능한 결합을 통해 로봇 암(904)에 부착된 본체 또는 하우징(902)을 포함한다. 일부 실시예에서, 하우징(902)과 로봇 암(904) 사이의 연결은 도 1의 제어기(106)와 같은 제어 컴퓨터에 의해 제어되는 전동 조인트를 포함할 수 있다. 엔드 이펙터(900)는 흡입 제어 모듈(908)에 진공 소스를 공급하기 위해 로봇 암을 관통하여 하우징(902) 안으로 이어지는 흡입 또는 기타 공압 라인(906)을 추가로 포함한다. 다양한 실시예에서, 제어 모듈(908)은 예컨대 무선 및/또는 유선 통신을 경유하여 통신 인터페이스(914)를 통해 엔드 이펙터(900) 외부의 제어 컴퓨터, 예컨대 도 1의 제어기(106)에 연결된다. 제어 모듈(908)은 엔드 이펙터(900)를 사용하여 품목을 픽업하고 이동시켜서 내려 놓기 위해 엔드 이펙터(900)를 포함하는 흡입 컵(910, 912)에 흡입력을 공급하도록, 예컨대 흡입을 통해 엔드 이펙터를 품목에 부착하도록 작동 가능한 전자 및/또는 전자-기계적 요소를 포함한다.
도시된 예에서, 하우징(902)의 측면에 장착된 카메라(916)는 엔드 이펙터(900) 아래 시야의 이미지 데이터를 제공한다. 복수의 힘 센서(918, 920, 922, 924, 926, 928)는 흡입 컵(910, 912)에 각각 가해지는 힘을 측정한다. 다양한 실시예에서, 힘 측정치는 통신 인터페이스(914)를 통해 외부 및/또는 원격 제어 컴퓨터에 전달된다. 센서 판독치는 다양한 실시예에서 로봇 암(904) 및 엔드 이펙터(900)가 다른 품목 및/또는 측벽 또는 다른 구조에 인접한 자리에 품목을 꼭 맞추도록 사용되고 및/또는 불안정성(예: 아직 흡입 상태에 있지만, 품목이 놓여져서 안정적일 것으로 예상되는 장소에서 품목을 뒤로 눌려지는 불충분한 푸시 백 상태)을 검출하는 데 사용된다. 다양한 실시예에서, 힘 센서의 수평으로 장착된 쌍(예: 918 및 922, 924 및 928)은 힘이 모든 수평 방향에서 결정될 수 있도록 x-y 평면에서 직각으로 놓여진다.
도 10은 일부 실시예에 따라 그리퍼 유형 엔드 이펙터를 예시하는 블록도이다. 다양한 실시예에서, 도 10의 로봇 암 엔드 이펙터(1000)는 도 1의 엔드 이펙터(108)를 구현하는 데 사용될 수 있다.
도시된 예에서, 엔드 이펙터(1000)는 회전 가능한 결합을 통해 로봇 암(1004)에 부착된 본체 또는 하우징(1002)을 포함한다. 일부 실시예에서, 하우징(1002)과 로봇 암(1004) 사이의 연결은 도 1의 제어기(106)와 같은 제어 컴퓨터에 의해 제어되는 전동 조인트를 포함할 수 있다. 엔드 이펙터(1000)는 그리퍼 제어 모듈(1008)에 전력을 공급하기 위해 관절 디짓트(1010 및 1012) 및 로봇 암(1004)을 통해 하우징(1002)으로 이어지는 전력 라인(1006)을 포함하는 그리퍼를 추가로 포함한다. 다양한 실시예에서, 제어 모듈(1008)은 예컨대 무선 및/또는 유선 통신을 경유하여 통신 인터페이스(1014)를 통해 엔드 이펙터(1000) 외부의 제어 컴퓨터, 예컨대 도 1의 제어기(106)에 연결된다. 엔드 이펙터(1000), 예컨대, 도 1의 제어기(106). 제어 모듈(1008)은 그리퍼 디짓트(1010 및 1012)를 조작하도록 예컨대 엔드 이펙터(1000)를 사용하여 품목을 픽업하고 이동시켜서 내려 놓기 위해 품목을 파지하도록 작동 가능한 전자 및/또는 전자-기계적 요소를 포함한다.
도시된 예에서, 하우징(1002)의 측부에 장착된 카메라(1016)는 엔드 이펙터(1000) 아래 시야의 이미지 데이터를 제공한다. 복수의 힘 센서(1018, 1020, 1022, 1024, 1026, 1028)는 디짓트(1010 및 1012)의 장착 점에 각각 가해진 힘을 측정한다. 다양한 실시예에서, 힘 측정치는 통신 인터페이스(1014)를 통해 외부 및/또는 원격 제어 컴퓨터에 전달된다. 센서 판독치는 다양한 실시예에서 로봇 암(1004) 및 엔드 이펙터(1000)가 다른 품목 및/또는 측벽 또는 다른 구조에 인접한 자리에 품목을 꼭 맞추도록 사용되고 및/또는 불안정성(예: 아직 흡입 상태에 있지만, 품목이 놓여져서 안정적일 것으로 예상되는 장소에서 품목을 뒤로 눌려지는 불충분한 푸시 백 상태)을 검출하는 데 사용된다.
흡입-유형 이펙터가 도 9에 도시되어 있고 그리퍼-유형 이펙터가 도 10에 도시되어 있지만, 다양한 실시예에서 하나 이상의 다른 및/또는 상이한 유형의 엔드 이펙터가 본원에 공개된 대로 미지의 물체를 픽 앤드 플레이스하기 위해 로봇 시스템에서 사용될 수 있다.
일부 실시예에서, 센서는 다른 품목, 리셉터클 및/또는 환경과의 충돌을 검출하고 궤적의 "순응" 조정에 의해 자동화된 작동을 계속하는 데 사용된다. 예컨대, 벽 또는 다른 구조물이 부딪히면, 일부 실시예에서 로봇 암은 힘을 줄이고 장애물이 없어질 때까지 장애물을 따르도록 궤적을 조정한다.
이전 실시예가 이해의 명확성을 위해 일부 상세하게 설명되었지만, 본 발명은 제공된 상세 사항으로 제한되지 않다. 본 발명을 구현하는 많은 대안적인 방법이 있다. 개시된 실시예는 예시적이며 제한적이지 않다.
Claims (20)
- 방법에 있어서,
복수의 카메라들로부터 수신된 시각적 데이터에 기초하여, 작업공간 영역에 존재하는 하나 이상의 물체에 대한 하나 이상의 잠재적으로 파지 가능한 형태부(feature)의 세트를 결정하는 단계;
로봇 암 및 엔드 이펙터로써 상기 형태부를 파지하기 위해 상기 하나 이상의 잠재적으로 파지 가능한 형태부의 적어도 하위세트 각각에 대해 하나 이상의 대응하는 파지 방식을 결정하는 단계;
상기 파지 방식의 적어도 하위세트 각각에 대해서 대응하는 형태부의 성공적인 파지의 확률과 관련된 점수를 결정하는 단계;
제1 형태부에 대해 선택된 파지 방식과 관련된 대응하는 점수에 적어도 부분적으로 기초하여 상기 선택된 파지 방식을 사용하여 상기 하나 이상의 잠재적으로 파지 가능한 형태부의 제1 형태부를 파지하도록 선택하는 단계; 및
상기 선택된 파지 방식을 사용하여 상기 제 1 형태부를 파지하려고 시도하기 위해 상기 로봇 암 및 상기 엔드 이펙터를 제어하는 단계를 포함하는, 방법. - 제1항에 있어서,
상기 복수의 카메라들로부터 수신된 상기 시각적 데이터는 점 클라우드 데이터(point cloud data)를 포함하는, 방법. - 제1항에 있어서,
상기 복수의 카메라들로부터 수신된 상기 시각적 데이터에 기초하여 상기 하나 이상의 물체와 관련된 경계 정보를 결정하는 단계를 추가로 포함하는, 방법. - 제3항에 있어서,
상기 선택된 파지 방식은 상기 하나 이상의 물체와 관련된 결정된 경계 정보에 부분적으로 기초하여 선택되는, 방법. - 제1항에 있어서,
상기 하나 이상의 물체 중 하나를 복수의 형상들로 분할하는 단계를 추가로 포함하는, 방법. - 제1항에 있어서,
상기 제1 형태부는 상기 대응하는 형태부의 성공적인 파지의 확률과 관련된 가장 높은 점수를 갖는, 방법. - 제1항에 있어서,
상기 선택된 파지 방식을 사용하여 상기 제1 형태부를 파지하는 단계는 상기 제1 형태부의 파지가 성공적인지 여부를 결정하는 단계를 포함하는, 방법. - 제7항에 있어서,
상기 제1 형태부의 파지가 성공한 것으로 결정되는 경우, 상기 제1 형태부와 관련된 물체는 드롭 오프 영역(drop off area)으로 이동되는, 방법. - 제7항에 있어서,
상기 제1 형태부의 파지가 성공하지 못한 것으로 결정되는 경우, 상기 제1 형태부를 파지하기 위한 임계 횟수의 시도가 시도되었는지 여부를 결정하는, 방법. - 제9항에 있어서,
상기 제1 형태부를 파지하기 위한 임계 횟수의 시도가 시도된 것으로 결정되는 경우, 상기 하나 이상의 잠재적으로 파지 가능한 형태부 중 제2 형태부를 파지하도록 선택하는, 방법. - 제9항에 있어서,
상기 제1 형태부를 파지하기 위한 임계 횟수의 시도가 시도되지 않은 경우, 상기 제1 형태부를 파지하기 위해 동일하거나 상이한 파지 기술을 구현하는, 방법. - 제1항에 있어서,
상기 작업공간 영역에서 사람을 검출하는 단계; 및
사람이 제1 물체와 관련된 상기 제1 형태부와 동일한 영역에 위치하는지 여부에 기초하여 제2 물체와 관련된 제2 형태부를 선택하는 단계를 추가로 포함하는, 방법. - 제1항에 있어서,
상기 작업공간 영역에서 사람을 검출하는 단계; 및
사람이 물체와 관련된 상기 제 1 형태부와 동일한 영역에서 검출되는 경우, 상기 로봇 암의 작동을 중지하는 단계를 추가로 포함하는, 방법. - 제1항에 있어서,
상기 제1 형태부와 관련된 물체를 드롭 오프 영역으로 이동시키는 단계를 추가로 포함하는, 방법. - 제14항에 있어서,
상기 물체가 낙하되었는지 여부를 결정하는 단계를 추가로 포함하는, 방법. - 제1항에 있어서,
상기 제1 형태부와 관련된 물체를 상기 드롭 오프 영역에 내려 놓는 단계(place)를 추가로 포함하는, 방법. - 제1항에 있어서,
오교정 상태가 발생했는지 여부에 기초하여 상기 로봇 암 및 상기 엔드 이펙터와 관련된 로봇 시스템을 재교정하는 단계를 추가로 포함하는, 방법. - 제1항에 있어서,
신규 물체가 상기 작업공간에서 검출되는지 여부에 기초하여 상기 로봇 암 및 상기 엔드 이펙터와 관련된 로봇 시스템의 작동을 갱신하는 단계를 추가로 포함하는, 방법. - 시스템으로서,
통신 인터페이스; 및
상기 통신 인터페이스에 결합된 프로세서를 포함하고, 상기 프로세서는:
복수의 카메라들로부터 수신된 시각적 데이터에 기초하여, 작업공간 영역에 존재하는 하나 이상의 물체에 대한 하나 이상의 잠재적으로 파지 가능한 형태부의 세트를 결정하고;
로봇 암 및 엔드 이펙터로써 상기 형태부를 파지하기 위해 하나 이상의 잠재적으로 파지 가능한 형태부의 적어도 하위세트 각각에 대해 하나 이상의 대응하는 파지 방식을 결정하고;
상기 파지 방식들의 적어도 하위세트 각각에 대해서 대응하는 형태부의 성공적인 파지의 확률과 관련된 점수를 결정하고;
제1 형태부에 대해 선택된 파지 방식과 관련된 대응하는 점수에 적어도 부분적으로 기초하여 상기 선택된 파지 방식을 사용하여 상기 하나 이상의 잠재적으로 파지 가능한 형태부의 제1 형태부를 파지하도록 선택하고; 및
상기 선택된 파지 방식을 사용하여 상기 제 1 형태부를 파지하려고 시도하기 위해 상기 로봇 암 및 상기 엔드 이펙터를 제어하도록 구성되는, 시스템. - 컴퓨터 프로그램 제품으로서, 상기 컴퓨터 프로그램 제품은 비일시적 컴퓨터 판독 가능 매체에 구현되고 그리고 상기 컴퓨터 프로그램 제품은:
복수의 카메라들로부터 수신된 시각적 데이터에 기초하여, 작업공간 영역에 존재하는 하나 이상의 물체에 대한 하나 이상의 잠재적으로 파지 가능한 형태부의 세트를 결정하고;
로봇 암 및 엔드 이펙터로써 상기 형태부를 파지하기 위해 하나 이상의 잠재적으로 파지 가능한 형태부의 적어도 하위세트 각각에 대해 하나 이상의 대응하는 파지 방식을 결정하고;
상기 파지 방식들의 적어도 하위세트 각각에 대해서 대응하는 형태부의 성공적인 파지의 확률과 관련된 점수를 결정하고;
제1 형태부에 대해 선택된 파지 방식과 관련된 대응하는 점수에 적어도 부분적으로 기초하여 상기 선택된 파지 방식을 사용하여 상기 하나 이상의 잠재적으로 파지 가능한 형태부의 제1 형태부를 파지하도록 선택하고; 및
상기 선택된 파지 방식을 사용하여 상기 제 1 형태부를 파지하려고 시도하기 위해 상기 로봇 암 및 상기 엔드 이펙터를 제어하기 위한 명령어들을 포함하는 컴퓨터 프로그램 제품.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020247024063A KR20240116846A (ko) | 2019-04-05 | 2020-03-31 | 자율적인 미지의 물체의 픽 앤드 플레이스 |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962829969P | 2019-04-05 | 2019-04-05 | |
US62/829,969 | 2019-04-05 | ||
US16/834,115 | 2020-03-30 | ||
US16/834,115 US11813758B2 (en) | 2019-04-05 | 2020-03-30 | Autonomous unknown object pick and place |
PCT/US2020/025916 WO2020205837A1 (en) | 2019-04-05 | 2020-03-31 | Autonomous unknown object pick and place |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020247024063A Division KR20240116846A (ko) | 2019-04-05 | 2020-03-31 | 자율적인 미지의 물체의 픽 앤드 플레이스 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210136067A true KR20210136067A (ko) | 2021-11-16 |
KR102688270B1 KR102688270B1 (ko) | 2024-07-29 |
Family
ID=72662821
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020247024063A KR20240116846A (ko) | 2019-04-05 | 2020-03-31 | 자율적인 미지의 물체의 픽 앤드 플레이스 |
KR1020217031899A KR102688270B1 (ko) | 2019-04-05 | 2020-03-31 | 자율적인 미지의 물체의 픽 앤드 플레이스 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020247024063A KR20240116846A (ko) | 2019-04-05 | 2020-03-31 | 자율적인 미지의 물체의 픽 앤드 플레이스 |
Country Status (8)
Country | Link |
---|---|
US (2) | US11813758B2 (ko) |
EP (1) | EP3948476A4 (ko) |
JP (2) | JP7301147B2 (ko) |
KR (2) | KR20240116846A (ko) |
CN (1) | CN113795864A (ko) |
CA (2) | CA3235027A1 (ko) |
MX (1) | MX2021009913A (ko) |
WO (1) | WO2020205837A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024122838A1 (ko) * | 2022-12-06 | 2024-06-13 | 한국전자기술연구원 | 그리퍼의 파지 시스템 및 방법 |
Families Citing this family (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9233470B1 (en) * | 2013-03-15 | 2016-01-12 | Industrial Perception, Inc. | Determining a virtual representation of an environment by projecting texture patterns |
US11407111B2 (en) * | 2018-06-27 | 2022-08-09 | Abb Schweiz Ag | Method and system to generate a 3D model for a robot scene |
US11775699B2 (en) * | 2019-05-02 | 2023-10-03 | Dassault Systemes Americas Corp. | Extracting grasping cues from tool geometry for digital human models |
CN114641378B (zh) * | 2019-09-07 | 2024-09-27 | 具现智能有限公司 | 用于机器人拣选的系统和方法 |
US11724401B2 (en) * | 2019-11-13 | 2023-08-15 | Nvidia Corporation | Grasp determination for an object in clutter |
US11331799B1 (en) * | 2019-12-31 | 2022-05-17 | X Development Llc | Determining final grasp pose of robot end effector after traversing to pre-grasp pose |
JP7441707B2 (ja) * | 2020-03-31 | 2024-03-01 | 株式会社ユーシン精機 | アタッチメントの三次元形状寸法測定方法 |
WO2022015807A1 (en) * | 2020-07-14 | 2022-01-20 | Vicarious Fpc, Inc. | Method and system for object grasping |
US11273552B2 (en) | 2020-07-14 | 2022-03-15 | Vicarious Fpc, Inc. | Method and system for object grasping |
US11559885B2 (en) | 2020-07-14 | 2023-01-24 | Intrinsic Innovation Llc | Method and system for grasping an object |
WO2022087360A1 (en) * | 2020-10-23 | 2022-04-28 | Massachusetts Institute Of Technology | Learning physical features from tactile robotic exploration |
US20220152826A1 (en) * | 2020-11-13 | 2022-05-19 | Nvidia Corporation | Object rearrangement using learned implicit collision functions |
US11679500B2 (en) * | 2020-12-14 | 2023-06-20 | Honda Motor Co., Ltd. | Target object retrieval |
CN116635193A (zh) * | 2020-12-21 | 2023-08-22 | 波士顿动力公司 | 监督式自主抓取 |
CN112720487B (zh) * | 2020-12-23 | 2022-03-22 | 东北大学 | 基于自适应动态力平衡的机械臂抓取方法和系统 |
EP4166286A4 (en) * | 2020-12-24 | 2024-01-17 | Samsung Electronics Co., Ltd. | ROBOT HAND |
CN112847348B (zh) * | 2020-12-30 | 2022-10-18 | 深兰智能科技(上海)有限公司 | 机械手控制方法、装置、拾取设备及计算机可读存储介质 |
CN112828892B (zh) * | 2021-01-22 | 2022-04-26 | 熵智科技(深圳)有限公司 | 一种工件抓取方法、装置、计算机设备及存储介质 |
JP7554130B2 (ja) * | 2021-02-05 | 2024-09-19 | 株式会社アマダ | 装置判別システム、装置判別方法及び装置判別プログラム |
CN112802106B (zh) * | 2021-02-05 | 2024-06-18 | 梅卡曼德(北京)机器人科技有限公司 | 对象抓取方法及装置 |
JP2022131750A (ja) | 2021-02-26 | 2022-09-07 | 株式会社東芝 | ハンドリングシステム、搬送システム、制御装置、制御プログラム、およびハンドリング方法 |
US11911919B2 (en) * | 2021-03-05 | 2024-02-27 | Mujin, Inc. | Method and computing system for performing grip region detection |
US20220402128A1 (en) * | 2021-06-18 | 2022-12-22 | Intrinsic Innovation Llc | Task-oriented grasping of objects |
US20220410381A1 (en) * | 2021-06-29 | 2022-12-29 | Intrinsic Innovation Llc | Systems and methods for picking objects using 3-d geometry and segmentation |
US20230021942A1 (en) * | 2021-07-14 | 2023-01-26 | Dassault Systèmes Americas Corp. | Environment-aware Prepositioning Of Digital Models In An Environment |
JP2023026187A (ja) * | 2021-08-13 | 2023-02-24 | 株式会社東芝 | ロボットハンド、ハンドリングシステム、ロボットハンド制御装置、ロボットハンドの制御方法、プログラム、及び記憶媒体 |
US11858139B1 (en) * | 2021-08-27 | 2024-01-02 | Amazon Technologies, Inc. | Robotic manipulator systems and methods involving non-planar and/or deformable support structures |
CN113977581A (zh) * | 2021-11-10 | 2022-01-28 | 胜斗士(上海)科技技术发展有限公司 | 抓取系统及抓取方法 |
CN118613354A (zh) * | 2021-12-10 | 2024-09-06 | 波士顿动力公司 | 用于机器人操纵器的抓取规划的系统和方法 |
US20230234233A1 (en) * | 2022-01-26 | 2023-07-27 | Nvidia Corporation | Techniques to place objects using neural networks |
US20230278219A1 (en) * | 2022-01-31 | 2023-09-07 | Dexterity, Inc. | Object sequencer for container loading |
US20230278223A1 (en) * | 2022-03-04 | 2023-09-07 | Sanctuary Cognitive Systems Corporation | Robots, tele-operation systems, computer program products, and methods of operating the same |
US20230302636A1 (en) * | 2022-03-23 | 2023-09-28 | Mitsubishi Electric Research Laboratories, Inc. | Systems and Methods for Flexible Robotic Manipulation by Fast Online Load Estimation |
WO2023192331A1 (en) * | 2022-03-28 | 2023-10-05 | Seegrid Corporation | Localization of horizontal infrastructure using point clouds |
DE102022205883A1 (de) * | 2022-06-09 | 2023-12-14 | Kuka Deutschland Gmbh | Erhöhung der Greifrate |
CN115303574B (zh) * | 2022-07-25 | 2023-06-23 | 大连交通大学 | 基于机器视觉的空间管件柔性真空塑封装置及其塑封步骤 |
EP4311632A1 (de) * | 2022-07-27 | 2024-01-31 | Siemens Aktiengesellschaft | Verfahren zum greifen eines objekts, computerprogramm und elektronisch lesbarer datenträger |
US20240109181A1 (en) * | 2022-09-23 | 2024-04-04 | Fanuc Corporation | Grasp teach by human demonstration |
WO2024095120A1 (en) * | 2022-11-02 | 2024-05-10 | G.D S.P.A. | Process for the automated handling of products within a plant |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2666599A1 (en) * | 2012-05-21 | 2013-11-27 | Kabushiki Kaisha Yaskawa Denki | Robot hand, robot, and method for manufacturing workpiece |
US20180272535A1 (en) * | 2017-03-22 | 2018-09-27 | Kabushiki Kaisha Toshiba | Object handling device and calibration method thereof |
US20190061158A1 (en) * | 2017-02-07 | 2019-02-28 | Clara Vu | Detecting and classifying workspace regions for safety monitoring |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9014857B2 (en) * | 2012-01-13 | 2015-04-21 | Toyota Motor Engineering & Manufacturing North America, Inc. | Methods and computer-program products for generating grasp patterns for use by a robot |
US20130343640A1 (en) * | 2012-06-21 | 2013-12-26 | Rethink Robotics, Inc. | Vision-guided robots and methods of training them |
US10089575B1 (en) * | 2015-05-27 | 2018-10-02 | X Development Llc | Determining grasping parameters for grasping of an object by a robot grasping end effector |
WO2018236753A1 (en) | 2017-06-19 | 2018-12-27 | Google Llc | PREDICTION OF ROBOTIC SEIZURE USING NEURAL NETWORKS AND A GEOMETRY-SENSITIVE REPRESENTATION OF OBJECT |
US11007648B2 (en) * | 2017-09-05 | 2021-05-18 | Abb Schweiz Ag | Robotic system for grasping objects |
US10773382B2 (en) | 2017-09-15 | 2020-09-15 | X Development Llc | Machine learning methods and apparatus for robotic manipulation and that utilize multi-task domain adaptation |
US10899011B2 (en) * | 2018-11-14 | 2021-01-26 | Fetch Robotics, Inc. | Method and system for selecting a preferred robotic grasp of an object-of-interest using pairwise ranking |
US10981272B1 (en) * | 2017-12-18 | 2021-04-20 | X Development Llc | Robot grasp learning |
US11097418B2 (en) * | 2018-01-04 | 2021-08-24 | X Development Llc | Grasping of an object by a robot based on grasp strategy determined using machine learning model(s) |
WO2023146886A1 (en) * | 2022-01-31 | 2023-08-03 | Dexterity, Inc. | Packing and planning for tight incollapsible loads |
-
2020
- 2020-03-30 US US16/834,115 patent/US11813758B2/en active Active
- 2020-03-31 CA CA3235027A patent/CA3235027A1/en active Pending
- 2020-03-31 CN CN202080018327.5A patent/CN113795864A/zh active Pending
- 2020-03-31 KR KR1020247024063A patent/KR20240116846A/ko not_active Application Discontinuation
- 2020-03-31 MX MX2021009913A patent/MX2021009913A/es unknown
- 2020-03-31 CA CA3130215A patent/CA3130215C/en active Active
- 2020-03-31 JP JP2021552534A patent/JP7301147B2/ja active Active
- 2020-03-31 EP EP20784049.7A patent/EP3948476A4/en active Pending
- 2020-03-31 WO PCT/US2020/025916 patent/WO2020205837A1/en unknown
- 2020-03-31 KR KR1020217031899A patent/KR102688270B1/ko active IP Right Grant
-
2023
- 2023-06-20 JP JP2023100423A patent/JP7508655B2/ja active Active
- 2023-10-11 US US18/485,212 patent/US20240033937A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2666599A1 (en) * | 2012-05-21 | 2013-11-27 | Kabushiki Kaisha Yaskawa Denki | Robot hand, robot, and method for manufacturing workpiece |
US20190061158A1 (en) * | 2017-02-07 | 2019-02-28 | Clara Vu | Detecting and classifying workspace regions for safety monitoring |
US20180272535A1 (en) * | 2017-03-22 | 2018-09-27 | Kabushiki Kaisha Toshiba | Object handling device and calibration method thereof |
JP2018158391A (ja) * | 2017-03-22 | 2018-10-11 | 株式会社東芝 | 物体ハンドリング装置およびその較正方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024122838A1 (ko) * | 2022-12-06 | 2024-06-13 | 한국전자기술연구원 | 그리퍼의 파지 시스템 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
CN113795864A (zh) | 2021-12-14 |
JP7301147B2 (ja) | 2023-06-30 |
KR102688270B1 (ko) | 2024-07-29 |
CA3130215A1 (en) | 2020-10-08 |
KR20240116846A (ko) | 2024-07-30 |
CA3235027A1 (en) | 2020-10-08 |
WO2020205837A1 (en) | 2020-10-08 |
JP7508655B2 (ja) | 2024-07-01 |
EP3948476A4 (en) | 2022-12-21 |
JP2023116741A (ja) | 2023-08-22 |
US11813758B2 (en) | 2023-11-14 |
US20200316782A1 (en) | 2020-10-08 |
CA3130215C (en) | 2024-05-21 |
US20240033937A1 (en) | 2024-02-01 |
EP3948476A1 (en) | 2022-02-09 |
MX2021009913A (es) | 2022-03-11 |
JP2022525395A (ja) | 2022-05-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102688270B1 (ko) | 자율적인 미지의 물체의 픽 앤드 플레이스 | |
US11772262B2 (en) | Detecting slippage from robotic grasp | |
US11969880B2 (en) | Detecting robot grasp of very thin object or feature | |
US9393693B1 (en) | Methods and systems for determining and modeling admissible gripper forces for robotic devices | |
KR20170012455A (ko) | 궤적 계획을 위한 물체 메트릭들의 실시간 결정 | |
JP2022527869A (ja) | ゾーングリッパーを使用した箱の操作 | |
CN108698225B (zh) | 机器人码放货物的方法及机器人 | |
EP4426525A1 (en) | Controlling multiple robots to cooperatively pick and place items | |
WO2023187006A1 (en) | Controlling a robotic manipulator for packing an object | |
KR20240089492A (ko) | 대형 물체 로봇형 전방 로딩 알고리즘 | |
TWI854340B (zh) | 機器人系統、用以控制機器人系統之方法、及用以控制機器人系統之電腦程式產品 | |
JP7286524B2 (ja) | ピッキングロボット、ピッキング方法及びプログラム | |
JP2023063110A (ja) | ピッキングシステム、ピッキング装置、制御装置、プログラム、及び方法 | |
AU2023244486A1 (en) | Controlling a robotic manipulator for packing an object |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
X091 | Application refused [patent] | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) | ||
GRNT | Written decision to grant |