KR101859351B1 - 로봇 디바이스에 대한 가상 안전 케이지 - Google Patents

로봇 디바이스에 대한 가상 안전 케이지 Download PDF

Info

Publication number
KR101859351B1
KR101859351B1 KR1020177032216A KR20177032216A KR101859351B1 KR 101859351 B1 KR101859351 B1 KR 101859351B1 KR 1020177032216 A KR1020177032216 A KR 1020177032216A KR 20177032216 A KR20177032216 A KR 20177032216A KR 101859351 B1 KR101859351 B1 KR 101859351B1
Authority
KR
South Korea
Prior art keywords
environment
estimated
trajectories
physical
robotic
Prior art date
Application number
KR1020177032216A
Other languages
English (en)
Other versions
KR20170126511A (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 엑스 디벨롭먼트 엘엘씨
Publication of KR20170126511A publication Critical patent/KR20170126511A/ko
Application granted granted Critical
Publication of KR101859351B1 publication Critical patent/KR101859351B1/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/1674Programme controls characterised by safety, monitoring, diagnostic
    • B25J9/1676Avoiding collision or forbidden zones
    • 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/06Safety devices
    • 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
    • B25J9/1666Avoiding collision or forbidden zones
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40196Projecting light on floor to delimit danger zone around robot
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40202Human robot coexistence
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40203Detect position of operator, create non material barrier to protect operator
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/46Sensing device
    • Y10S901/47Optical
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/49Protective device

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

가상 안전 케이지들을 결정하고 제시하는 방법들 및 시스템들이 제공된다. 예시적인 방법은 로봇 디바이스에 의해 점유된 물리적 환경에서 물리적 동작을 수행하라는 로봇 디바이스에 대한 지시를 수신하는 단계를 수반할 수 있다. 본 방법은 또한, 지시를 수신한 것에 응답하여, 그리고 로봇 디바이스의 하나 이상의 물리적 컴포넌트들의 하나 이상의 파라미터들에 기초하여, 로봇 디바이스가 물리적 동작을 수행할 때 로봇 디바이스의 하나 이상의 물리적 컴포넌트들이 따라 움직일 것으로 추정되는 하나 이상의 추정된 궤적들을 결정하는 단계를 수반할 수 있다. 본 방법은, 하나 이상의 추정된 궤적들에 기초하여, 로봇 디바이스가 물리적 동작을 수행하는 동안 물리적 환경에서 점유할 것으로 추정되는 공간의 가상 표현을 결정하는 단계를 추가로 수반할 수 있다. 본 방법은 이어서 공간의 위치의 표시를, 물리적 환경 내에, 제공하는 단계를 수반할 수 있다.

Description

로봇 디바이스에 대한 가상 안전 케이지{VIRTUAL SAFETY CAGES FOR ROBOTIC DEVICES}
본원에서 달리 언급되지 않는 한, 이 섹션에 기술되는 내용이 본 출원에서의 청구항들에 대한 종래 기술이 아니고 이 섹션에 포함되는 것에 의해 종래 기술이라고 인정되지 않는다.
로봇 팔 또는 다른 로봇 디바이스와 같은 로봇 시스템들이 다양한 크기의 물체들을 집거나, 움직이거나, 또는 다른 방식으로 그것들과 상호작용하는 것을 비롯한 응용들에 사용될 수 있다. 이들과 같은 로봇 디바이스들이, 예를 들어, 공장들 및 다른 산업 환경들에서 발견될 수 있다. 이 로봇 디바이스들 중 일부는 비유연(non-compliant) 로봇 디바이스들 - 종종 하이 토크(high-torque)이고 그들의 주변 환경(예컨대, 움직이는 로봇 디바이스의 부근에서 걷고 있는 사람)에 거의 내지 전혀 관계없이 물리적 동작들을 수행하도록 구성되는 로봇 디바이스들 - 일 수 있다. 이들과 같은 다른 로봇 디바이스들은 유연(compliant) 로봇 디바이스들 - 그들의 주변 환경을 고려하고 충돌 회피 시스템들을 이용할 수 있고/있거나 근방의 물체들 또는 사람들에 대한 추가의 충돌 및 손상의 가능성을 감소시키기 위해 충돌을 검출한 것에 응답하여 특별한 조치들을 취할 수 있는 로봇 디바이스들 - 일 수 있다.
본 출원은 로봇 디바이스들에 대한 가상 안전 케이지(virtual safety cage)들에 관련된 실시예들을 개시한다. 일 양태에서, 본 출원은 방법을 기술한다. 본 방법은 로봇 디바이스가 로봇 디바이스에 의해 점유된 물리적 환경에서 물리적 동작을 수행할 것을 요청하는 지시를 수신하는 단계를 수반할 수 있다. 본 방법은 또한, 지시를 수신한 것에 응답하여, 로봇 디바이스의 하나 이상의 물리적 컴포넌트들의 하나 이상의 추정된 궤적들을 결정하는 단계를 수반할 수 있고, 여기서 하나 이상의 추정된 궤적들은 로봇 디바이스가 물리적 동작을 수행할 때 하나 이상의 물리적 컴포넌트들이 따라 움직일 것으로 추정되는 하나 이상의 궤적들이며, 여기서 하나 이상의 추정된 궤적들은 하나 이상의 물리적 컴포넌트들의 하나 이상의 파라미터들에 기초한다. 본 방법은 로봇 디바이스가 물리적 동작을 수행하는 동안 물리적 환경에서 점유할 것으로 추정되는 공간의 가상 표현을 결정하는 단계를 추가로 수반할 수 있고, 여기서 공간은 로봇 디바이스의 하나 이상의 물리적 컴포넌트들의 하나 이상의 추정된 궤적들에 기초하여 결정된다. 본 방법은 또한 공간의 위치의 표시를, 물리적 환경 내에, 제공하는 단계를 추가로 수반할 수 있다.
다른 양태에서, 본 출원은, 컴퓨팅 디바이스에 의해 실행될 때, 컴퓨팅 디바이스로 하여금 동작들을 수행하게 하는 명령어들을 저장하고 있는 비일시적 컴퓨터 판독가능 매체를 기술한다. 동작들은 로봇 디바이스가 로봇 디바이스에 의해 점유된 물리적 환경에서 물리적 동작을 수행할 것을 요청하는 지시를 수신하는 동작을 포함할 수 있다. 동작들은 또한, 지시를 수신한 것에 응답하여, 로봇 디바이스의 하나 이상의 물리적 컴포넌트들의 하나 이상의 추정된 궤적들을 결정하는 동작을 포함할 수 있고, 여기서 하나 이상의 추정된 궤적들은 로봇 디바이스가 물리적 동작을 수행할 때 하나 이상의 물리적 컴포넌트들이 따라 움직일 것으로 추정되는 하나 이상의 궤적들이며, 여기서 하나 이상의 추정된 궤적들은 하나 이상의 물리적 컴포넌트들의 하나 이상의 파라미터들에 기초한다. 본 방법은 로봇 디바이스가 물리적 동작을 수행하는 동안 물리적 환경에서 점유할 것으로 추정되는 공간의 가상 표현을 결정하는 단계를 추가로 포함할 수 있고, 여기서 공간은 로봇 디바이스의 하나 이상의 물리적 컴포넌트들의 하나 이상의 추정된 궤적들에 기초하여 결정된다. 본 방법은 또한 공간의 위치의 표시를, 물리적 환경 내에, 제공하는 단계를 추가로 포함할 수 있다.
또 다른 양태에서, 본 출원은 시스템을 기술한다. 본 시스템은 로봇 디바이스, 하나 이상의 광학 디바이스들, 무선 통신 인터페이스, 적어도 하나의 프로세서, 및 시스템으로 하여금 동작들을 수행하게 하기 위해 적어도 하나의 프로세서에 의해 실행가능한 명령어들을 포함하는 데이터 저장소를 포함할 수 있다. 동작들은 로봇 디바이스가 로봇 디바이스에 의해 점유된 물리적 환경에서 물리적 동작을 수행할 것을 요청하는 지시를 수신하는 동작을 포함할 수 있다. 기능은 또한, 지시를 수신한 것에 응답하여, 로봇 디바이스의 하나 이상의 물리적 컴포넌트들의 하나 이상의 추정된 궤적들을 결정하는 것을 포함할 수 있고, 여기서 하나 이상의 추정된 궤적들은 로봇 디바이스가 물리적 동작을 수행할 때 하나 이상의 물리적 컴포넌트들이 따라 움직일 것으로 추정되는 하나 이상의 궤적들이며, 여기서 하나 이상의 추정된 궤적들은 하나 이상의 물리적 컴포넌트들의 하나 이상의 파라미터들에 기초한다. 동작들은 로봇 디바이스가 물리적 동작을 수행하는 동안 물리적 환경에서 점유할 것으로 추정되는 공간의 가상 표현을 결정하는 동작을 추가로 포함할 수 있고, 여기서 공간은 로봇 디바이스의 하나 이상의 물리적 컴포넌트들의 하나 이상의 추정된 궤적들에 기초하여 결정된다. 동작들은 또한, 하나 이상 광학 디바이스들과 무선 통신 인터페이스 중 하나 이상에 의해, 공간의 위치의 표시를 물리적 환경 내에 제공하는 동작을 추가로 포함할 수 있다.
또 다른 양태에서, 로봇 디바이스가 로봇 디바이스에 의해 점유된 물리적 환경에서 물리적 동작을 수행할 것을 요청하는 지시를 수신하는 수단을 포함하는 시스템이 제공된다. 본 시스템은 또한, 지시를 수신한 것에 응답하여, 로봇 디바이스의 하나 이상의 물리적 컴포넌트들의 하나 이상의 추정된 궤적들을 결정하는 수단을 포함할 수 있고, 여기서 하나 이상의 추정된 궤적들은 로봇 디바이스가 물리적 동작을 수행할 때 하나 이상의 물리적 컴포넌트들이 따라 움직일 것으로 추정되는 하나 이상의 궤적들이며, 여기서 하나 이상의 추정된 궤적들은 하나 이상의 물리적 컴포넌트들의 하나 이상의 파라미터들에 기초한다. 본 시스템은 로봇 디바이스가 물리적 동작을 수행하는 동안 물리적 환경에서 점유할 것으로 추정되는 공간의 가상 표현을 결정하는 수단을 추가로 포함할 수 있고, 여기서 공간은 로봇 디바이스의 하나 이상의 물리적 컴포넌트들의 하나 이상의 추정된 궤적들에 기초하여 결정된다. 본 시스템은 또한 공간의 위치의 표시를, 물리적 환경 내에, 제공하는 수단을 추가로 포함할 수 있다.
이상의 발명의 내용은 예시적인 것에 불과하고, 결코 제한하는 것으로 의도되어 있지 않다. 앞서 기술된 예시적인 양태들, 실시예들, 및 특징들에 부가하여, 추가의 양태들, 실시예들, 및 특징들이 도면들 및 이하의 상세한 설명을 참조하면 명백하게 될 것이다.
도 1a는 예시적인 실시예에 따른, 이동가능 장치 상에 장착된 로봇 팔을 나타낸 도면.
도 1b는 예시적인 실시예에 따른, 로봇 디바이스를 나타내는 기능 블록도.
도 2는 예시적인 실시예에 따른, 로봇 디바이스가 동작할 수 있는 예시적인 시스템을 나타내는 블록도.
도 3은 본원에 기술되는 적어도 일부 실시예에 따른, 예시적인 방법의 플로우차트.
도 4a 및 도 4b는 본원에 기술되는 적어도 일부 실시예에 따른, 수행되는 예시적인 방법의 예시적인 동작들을 나타낸 도면.
도 5a 및 도 5b는 본원에 기술되는 적어도 일부 실시예에 따른, 수행되는 예시적인 방법의 예시적인 동작들을 나타낸 도면.
도 6은 본원에 기술되는 적어도 일부 실시예에 따른, 수행되는 예시적인 방법의 예시적인 동작들을 나타낸 도면.
예시적인 방법들 및 시스템들이 본원에 기술되어 있다. 본원에 기술되는 임의의 예시적인 실시예 또는 특징이 꼭 다른 실시예들 또는 특징들보다 바람직하거나 유리한 것으로 해석되어야 하는 것은 아니다. 본원에 기술되는 예시적인 실시예들은 제한하는 것으로 의도되어 있지 않다. 개시된 시스템들 및 방법들의 특정 양태들이 아주 다양한 상이한 구성들 - 이들 모두가 본원에서 생각되고 있음 - 로 배열되고 결합될 수 있다는 것을 잘 알 것이다.
게다가, 도면들에 도시된 특정 배열들이 제한하는 것으로 보아서는 안된다. 다른 실시예들이 주어진 도면에 도시된 각각의 요소를 보다 많이 또는 보다 적게 포함할 수 있다는 것을 잘 알 것이다. 게다가, 예시된 요소들 중 일부가 결합되거나 생략될 수 있다. 또한 게다가, 예시적인 실시예는 도면들에 예시되지 않은 요소들을 포함할 수 있다.
이하의 설명에서, 용어들 "센서", "카메라", 또는 "광학 센서"는 서로 바꾸어 사용될 수 있고, 3D 영상 감지, 3D 깊이 감지, 2D 영상 감지, 2D 깊이 감지(즉, 2D 영상 및 대응하는 깊이 맵), 및/또는 디바이스의 물리적 환경의 다른 유형들의 감지를 수행하도록 구성된 디바이스 또는 디바이스들(모노 또는 스테레오 배열들)을 지칭할 수 있다.
게다가, 이하의 설명에서, 용어들 "로봇 디바이스"와 "로봇 매니퓰레이터(robotic manipulator)"는, 상자와 같은 물리적 물체들을 잡거나, 움직이거나, 다른 방식으로 조작하도록 구성된, 또는 사람들, 다른 로봇 디바이스들, 또는 다른 유형들의 물리적 물체들과 같은 주어진 물리적 환경 내의 물리적 물체들과의 상호작용을 수반할 수 있는 다른 동작들을 수행하도록 구성된 로봇 팔과 같은, 하나 이상의 로봇 디바이스들을 기술하기 위해 서로 바꾸어 사용될 수 있다. 게다가, 용어 "로봇 매니퓰레이터"는 또한, 이동가능 장치 상에 장착된 로봇 팔과 같은, 다수의 로봇 디바이스들의 조합을 총칭하여 기술하는 데 사용될 수 있다. 로봇 매니퓰레이터들이 이 구성들로 제한되지 않을 수 있다는 것을 잘 알 것이다.
논의된 바와 같이, 일부 로봇 디바이스들은 유연 로봇 디바이스들일 수 있는 반면, 다른 것들은 비유연일 수 있다. 사람들에 대한 부상의 위험을 줄이기 위해, 어느 한 유형의 로봇 디바이스들이 사람들로부터 격리될 수 있는 환경들에서 동작할 수 있다. 상세하게는, 이러한 격리된 환경은 로봇 디바이스에 의한 도달가능 공간의 체적을 포함할 수 있고, 여기서 체적은 본원에서 "정적 안전 케이지(static safety cage)"라고 지칭될 수 있는 것에 의해 둘러싸여 있다.
그에 따라, 로봇 디바이스가 그의 장래의 궤적들은 물론 근방의 움직이는 물체들 및 사람들의 궤적들을 연속적으로 추정하고 특정의 명시된 제한 시간들 내에서 로봇 디바이스의 도달가능 공간의 체적을 둘러싸는 "가상 안전 케이지"를 동적으로 결정/조절하는 것이 바람직할 수 있다. 예를 들어, 일부 실시예에서, 로봇 디바이스(또는 로봇 디바이스와 연관된 컴퓨팅 시스템)는 로봇 디바이스가, 로봇 팔을 한 위치로부터 다른 위치로 움직이는 것과 같은, 로봇 디바이스에 의해 점유되는 물리적 환경에서 물리적 동작을 수행할 것을 요청하는 지시를 수신할 수 있다. 이어서, 지시를 수신한 것에 응답하여, 로봇 디바이스는 물리적 동작을 수행하는 것에 관여되는 로봇 디바이스의 하나 이상의 물리적 컴포넌트들의 하나 이상의 파라미터들에 기초하여 물리적 동작의 하나 이상의 추정된 궤적들을 결정할 수 있다. 즉, 하나 이상의 추정된 궤적들은 로봇 디바이스가 물리적 동작을 수행할 때 하나 이상의 물리적 컴포넌트들이 따라 움직일 것으로 추정될 수 있는 궤적들일 수 있다. 예들 내에서, 이러한 추정된 궤적들은 로봇 디바이스가 물리적 동작을 수행하기 위해 추정된 궤적들을 따라 움직일 각자의 확률들에 대응할 수 있다. 예를 들어, 물리적 컴포넌트들의 파라미터들로 발생할 수 있는 가능한 불확실성으로 인해(예컨대, 로봇 디바이스의 관절이 마모되거나 다른 관절들보다 다른 방식으로 덜 신뢰성있을 수 있음), 가능한 궤적들의 범위가 추정될 수 있고, 각각의 궤적은 불확실성의 범위를 고려하고, 각각의 궤적은 연관된 신뢰도 점수를 갖는다.
게다가, 결정된 하나 이상의 추정된 궤적들에 기초하여, 로봇 디바이스는 이어서 로봇 디바이스가 물리적 동작을 수행하는 동안 물리적 환경에서 점유할 것으로 추정되는 공간의 가상 표현(즉, 가상 안전 케이지)을 결정할 수 있다. 일부 시나리오들에서, 로봇 디바이스가 근방의 움직이는 물체들 또는 사람들을 검출한 것에 응답하여 이 가상 표현이 조절될 수 있다. 예를 들어, 로봇 디바이스는 다양한 속도들 및 궤적들에서의 사람들 또는 다른 물체들의 이전에 결정된 움직임들의 데이터베이스에 액세스할 수 있고, 근방의 움직이는 물체 또는 사람의 장래의 궤적을 예측하기 위해 이 데이터베이스를 사용할 수 있다. 물체/사람의 예측된 궤적이 주어지면, 로봇 디바이스는 그 궤적을 그 자신의 추정된 궤적과 비교하고 로봇 디바이스가 그 다음의 미리 결정된 기간 내에 점유할 공간의 경로 및 체적이 물체/사람이 그 동일한 미리 결정된 기간 내에 점유할 공간의 경로 및 체적과 교차할 것으로 어느 정도 결정할 수 있다. 로봇 디바이스는 이어서 2개의 경로들/체적들 사이의 잠재적인 교차(또는 잠재적인 교차 없음)에 기초하여 그의 가상 안전 케이지를 조절(예컨대, 확장 또는 축소)할 수 있다.
더욱이, 로봇 디바이스가, 결정된 가상 안전 케이지의 시각적 및/또는 오디오 표시와 같은, 공간의 위치의 표시를 물리적 환경 내에 제공하는 것이 또한 바람직할 수 있다. 예를 들어, 표시는 로봇 디바이스의 주변 환경에 투사되는 컬러 및/또는 번쩍이는 경고 광, 오디오 경보, 또는 로봇 디바이스 주위의 바닥으로 투사되는 가상 안전 케이지를 나타내는 2D 영상의 형태를 취할 수 있다. 이 표시들은 또한 휴대폰들, 태블릿들, 웨어러블 컴퓨팅 디바이스들, 및 다른 컴퓨팅 디바이스들과 같은 원격 클라이언트 디바이스들에 제공될 수 있다. 게다가, 이러한 클라이언트 컴퓨팅 디바이스는 3D 모델들을 디스플레이하도록 구성될 수 있고, 그에 따라, 로봇 디바이스는 클라이언트 컴퓨팅 디바이스 상에 디스플레이하기 위한 가상 표현의 3D 모델/맵을 제공할 수 있다.
예들 내에서, 로봇 디바이스의 가상 안전 케이지를 결정하는 것 및 유지하는 것은, 공간 보존을 증진시키는 것과 같은, 다수의 산업적 및 사업적 장점들을 제공할 수 있다. 예를 들어, 로봇 디바이스들 및 사람들이 한정된 공간에 보다 효율적으로 그리고 어쩌면 협력하여 존재하고 작업할 수 있을 것이다. 주어진 순간들에 그리고 미리 결정된 장래의 기간들 동안에 (심지어 이러한 공간이 복잡한 형상을 가질 때에도) 로봇 디바이스에 의해 도달가능한 공간의 정확한 표현들을 계산하는 것에 의해, 사람들 및/또는 다른 로봇 디바이스들이 서로를 방해하는 것을 피하거나 그들의 공유된 물리적 환경을 다른 방식으로 효율적으로 사용할 수 있도록 이 표현들이 사람들 및/또는 다른 로봇 디바이스들에 제공될 수 있다. 다른 장점들이 또한 가능하다.
이제부터 다양한 실시예들에 대해 상세히 언급할 것이고, 그의 예들이 첨부 도면들에 예시되어 있다. 이하의 상세한 설명에서, 본 개시 내용 및 기술된 실시예들의 완전한 이해를 제공하기 위해 다수의 구체적인 상세가 기재되어 있다. 그렇지만, 본 개시 내용이 이 구체적인 상세 없이도 실시될 수 있다. 다른 경우에, 널리 공지된 방법들, 절차들, 컴포넌트들, 및 회로들이 실시예들의 양태들을 불필요하게 모호하게 하지 않기 위해 상세히 기술되지 않았다.
다양한 실시예에 따르면, 로봇 디바이스는, 홀로노믹 카트(holonomic cart)(예컨대, 카트가 임의의 방향으로 움직일 수 있게 하는 바퀴들을 갖는 카트)와 같은, 이동가능 장치 상에 장착된 로봇 매니퓰레이터를 포함할 수 있다. 도 1은 로봇 매니퓰레이터를 포함하는 예시적인 홀로노믹 카트를 포함하는, 이러한 로봇 디바이스(100)를 묘사하고 있다. 즉, 일부 실시예에서, 이동가능 홀로노믹 카트(102)는 카트 상에 장착된 로봇 팔(104)을 포함할 수 있다. 로봇 팔(104)은 환경 내의 물체들을 파지하거나 그들과 다른 방식으로 상호작용하기 위한 파지 컴포넌트(gripping component)(106)를 포함할 수 있다. 일부 실시예에서, 파지 컴포넌트(106)는 고출력 자화 그리퍼(high-powered magnetized gripper), 손 모양의 그리퍼, 석션 그리퍼(suction gripper), 및/또는 다른 유형의 그리퍼일 수 있다. 카트는 2 자유도로 동작하는 홀로노믹 바퀴들일 수 있는, 하나 이상의 바퀴들(108)을 포함할 수 있다. 다른 예에서, 로봇 디바이스(100)는, 다른 로봇 매니퓰레이터들과 같은, 다른 컴포넌트들을 포함할 수 있다. 또 다른 예에서, 로봇 매니퓰레이터가 상이한 유형의 이동가능 장치 상에 장착될 수 있거나, 이동가능 베이스(movable base) 상에 장착되지 않을 수 있다. 예를 들어, 로봇 매니퓰레이터가 공장 환경 또는 다른 환경 내의 고정된 위치에 장착될 수 있다.
도 1b는 도 1a의 로봇 디바이스(100)와 같은, 예시적인 실시예에 따른, 로봇 디바이스를 나타내는 기능 블록도이다. 로봇 디바이스(100)는 기계 시스템(120), 감지 시스템(130), 제어 시스템(140)은 물론 전원(150)과 같은 다양한 서브시스템들을 포함할 수 있다. 로봇 디바이스(100)는 보다 많은 또는 보다 적은 서브시스템들을 포함할 수 있고, 각각의 서브시스템은 다수의 요소들을 포함할 수 있다. 게다가, 로봇 디바이스(100)의 서브시스템들 및 요소들 중 하나 이상이 상호연결되거나 하나로 통합될 수 있다. 이와 같이, 로봇 디바이스(100)의 기술된 동작들 중 하나 이상이 부가의 기능적 또는 물리적 컴포넌트들로 나누어지거나, 보다 적은 기능적 또는 물리적 컴포넌트들로 결합될 수 있다. 일부 추가 예에서, 부가의 기능적 및/또는 물리적 컴포넌트들이 도 1a 및 도 1b에 의해 예시된 예들에 추가될 수 있다. 다른 추가 예에서, 로봇 디바이스(100)에 포함된 시스템들 중 하나 이상이 로봇 디바이스로부터 원격지에 위치될 수 있다.
기계 시스템(120)은, 로봇 팔(104), 그리퍼(106), (이동가능 또는 홀로노믹) 카트(102), 및 하나 이상의 바퀴들(108)을 비롯한, 도 1a와 관련하여 앞서 기술된 컴포넌트들을 포함할 수 있다. 기계 시스템(120)은 그에 부가하여 로봇 디바이스(100)에 포함되고, 다양한 관절들, 바퀴들 등과 같은, 로봇 디바이스의 다양한 컴포넌트들을 형성하기 위해 복수의 강체 장치들을 서로 결합시키도록 구성된 하나 이상의 모터들(도시되지 않음)을 포함할 수 있다. 실제로, 로봇 디바이스(100)가 특정의 동작을 수행하라는 지시를 수신할 때, 각각의 모터는 특정의 동작을 이루고 있는 각자의 동작들을 수행하라는 상대 지시(relative instruction)들을 수신하도록 구성될 수 있고/있거나, 다수의 모터들이 동작을 수행하라는 동일한 지시를 수신하도록 구성될 수 있다. 그에 따라, 각각의 모터는, 가능한 동작 파라미터들 중에서도 특히, 모터가 견딜 수 있는 가능한 모터 토크들의 범위와 같은, 그 모터의 특정 동작의 수행을 용이하게 하기 위해 그 모터에 연관된 각자의 동작 파라미터들을 가질 수 있다. 게다가, 이 모터들은 전원에 의해 전력을 공급받는 전기 모터일 수 있거나, 가스 기반 연료 또는 태양열 발전과 같은, 다수의 상이한 에너지원들에 의해 전력을 공급받을 수 있다. 그에 부가하여, 모터들은 전원(130)으로부터 전력을 받도록 구성될 수 있다. 전원(130)은 로봇 디바이스(100)의 다양한 컴포넌트들에 전력을 제공할 수 있고, 예를 들어, 충전가능 리튬이온 또는 납축 배터리를 나타낼 수 있다. 예시적인 실시예에서, 이러한 배터리들의 하나 이상의 뱅크들이 전력을 제공하도록 구성될 수 있다. 다른 전원 재료들 및 유형들이 또한 가능하다.
감지 시스템(140)은, 전방 내비게이션 센서(110) 및 후방 내비게이션 센서(112)와 같은, 로봇 디바이스(100)에 부착된 하나 이상의 센서들을 사용할 수 있다. 감지 시스템(140)은 또한, 로봇 팔이 움직일 때 로봇 팔의 물리적 환경에 관한 정보를 감지할 수 있는 로봇 팔(104) 상에 위치된 센서들과 같은, 로봇 디바이스(100) 상의 다른 곳에 부착된 하나 이상의 다른 센서들(도시되지 않음)을 사용할 수 있다. 전방 및 후방 내비게이션 센서들(110, 112)은 물론, 다른 센서들은 방금 기술된 것과 유사한 방식 및/또는 본원에 기술되는 임의의 다른 방식으로 기능할 수 있다.
감지 시스템(140)은 환경과 효율적으로 상호작용하기 위해 제어 시스템(150)(예컨대, 운동 계획 소프트웨어를 실행하는 컴퓨터)에 의해 사용될 수 있는 로봇 디바이스(100)의 물리적 환경에 관한 정보를 결정할 수 있다. 예들 내에서, 감지 시스템(140)에 의해 획득된 정보는 환경의 디지털 모델을 구축하기 위해 통합될 수 있다. 이 정보를 사용하여, 제어 시스템(150)은 로봇 디바이스(100)의 하나 이상의 컴포넌트들로 하여금 특정의 동작을 수행하기 위한 위치로 내비게이트하게 할 수 있다. 부가의 예에서, 환경을 모델링하기 위해 3D 센서들로부터 추출된 정보와 같은, 로봇 디바이스(100)의 물리적 환경에 관한 정보가 환경에서의 다른 물리적 물체들과의 충돌을 피하기 위해 또는 로봇 디바이스의 내비게이션(navigation)을 다른 방식으로 용이하게 하기 위해 로봇 디바이스를 조종하는 데 사용될 수 있다. 게다가, 이러한 정보가 환경 재구성을 위해 사용될 수 있다. 환경 재구성은 환경을 감지하고 그 정보를 간단한 수학적 3D 기하 형태들(예컨대, 평면, 원통, 원뿔, 반구 등)의 단순화된 기하 모델로 추출하는 것에 의해 수행될 수 있다. 어떤 경우에, 이러한 기법들은 운동 계획을 보다 쉽도록 만들 수 있고/있거나, 모델들의 위반(예컨대, 충돌)을 검출하는 것을 보다 쉽도록 만들 수 있다.
더욱이, 제어 시스템(150)은 내비게이션 및 로봇 디바이스(100)에 의해 수행가능한 다른 작업들을 용이하게 하기 위해 다른 정보를 사용할 수 있다. 예를 들어, 제어 시스템(150)은 임의의 주어진 시점에서의 로봇 디바이스(100)의 장래의 움직임들의 가상 표현을 결정하기 위해 기계 시스템(120)으로부터의 정보(예컨대, 모터들의 동작 파라미터들)를 감지 시스템(140) 및/또는 표시 시스템(160)으로부터의 정보와 결합시킬 수 있다. 예들 내에서, 표시 시스템(160)은 이어서 가상 표현과 연관된 표시를 로봇 디바이스(100)의 주변 환경에 제공하도록 구성될 수 있다. 그에 따라, 표시 시스템(160)은 (도 1a에 도시된 광학 디바이스(116)와 같은) 하나 이상의 카메라들/프로젝터들, 스피커들, 진동 발생기들(즉, 진동을 야기하는 디바이스들), 및/또는 공간의 표시를 로봇 디바이스에 의해 점유되는 물리적 환경 내에 제공하도록 구성되어 있는 다른 디바이스들을 포함할 수 있다. 예를 들어, 로봇 디바이스(100)의 궤적이 환경에서의 다른 움직이는 물체의 궤적을 방해할 수 있다고 결정할 때, 광학 디바이스(116)는 경고 광을 번쩍거리도록 구성될 수 있다. 추가의 예에서, 스피커가 경고 경보를 제공하도록 구성될 수 있다. 다른 추가 예에서, 진동 발생기는 로봇 디바이스 및/또는 로봇 디바이스에 의해 점유된 물리적 환경의 다른 부분들을 진동시키도록 구성될 수 있다. 표시 시스템(160)은 다른 동작들도 수행하도록 구성될 수 있다.
로봇 디바이스(100)의 동작들 중 다수 또는 전부가 제어 시스템(150)에 의해 제어될 수 있다. 제어 시스템(150)은, 메모리(156)와 같은, 비일시적 컴퓨터 판독가능 매체에 저장된 명령어들(154)을 실행하는 적어도 하나의 프로세서(152)(적어도 하나의 마이크로프로세서를 포함할 수 있음)를 포함할 수 있다. 제어 시스템(150)은 또한 로봇 디바이스(100)의 개개의 컴포넌트들 또는 서브시스템들을 분산된 방식으로 제어하는 역할을 할 수 있는 복수의 컴퓨팅 디바이스들을 나타낼 수 있다. 제어 시스템(150)은 로봇 디바이스(100)의 일부로서 위치될 수 있거나, 로봇 디바이스와 원격 통신할 수 있다.
일부 실시예에서, 메모리(146)는 도 1a 및 도 1b와 관련하여 앞서 기술된 것들을 비롯한, 로봇 디바이스(100)의 다양한 동작들을 실행하기 위해 프로세서(142)에 의해 실행가능한 명령어들(144)(예컨대, 프로그램 논리)을 포함할 수 있다. 메모리(146)는 기계 시스템(120), 센서 시스템(130), 및/또는 제어 시스템(140) 중 하나 이상으로 데이터를 전송하고, 그로부터 데이터를 수신하며, 그와 상호작용하고/하거나 그를 제어하는 명령어들을 비롯한, 부가의 명령어들도 포함할 수 있다.
도 2는 예시적인 실시예에 따른, 로봇 디바이스가 동작할 수 있는 예시적인 시스템(200)을 나타내는 블록도이다. 도시된 바와 같이, 시스템(200)은 도 1a 및 도 1b와 관련하여 기술된 로봇 디바이스(100), 제2 로봇 디바이스(210), 원격 센서들 및/또는 프로젝터들(또는 다른 이러한 디바이스들)(220), 원격 컴퓨팅 디바이스(230), 및 중앙 제어 시스템(240)을 포함할 수 있다. 예시적인 실시예에서, 시스템(200)의 각각의 엔터티는 각자의 통신 링크들(250)(예컨대, 유선 또는 무선 연결)을 사용하여 제어 시스템(240)과 통신한다. 제어 시스템(240)은 도 1b에 기술된 로봇 디바이스(100)의 로컬 제어 시스템(150)과 유사하게 동작하는 제어 시스템일 수 있다. 제어 시스템(240)은, 시스템(200)의 엔티티들 각각 사이에서의 데이터의 전달을 용이하게 하는 것과 관련된 동작들과 같은, 다른 동작들도 가질 수 있다. 일부 실시예에서, 시스템(200)의 각각의 엔티티 각각은 각자의 제어 시스템들을 가질 수 있다.
통신 링크들(250)은 무선 연결로서 예시되어 있지만; 유선 연결들이 또한 사용될 수 있다. 예를 들어, 통신 링크들(250)의 하나 이상은 USB(universal serial bus) 또는 병렬 버스와 같은 유선 직렬 버스일 수 있다. 유선 연결은 전용 연결(proprietary connection)일 수도 있다. 통신 링크들(250)은 또한, 예컨대, 가능한 것들 중에서도 특히, 블루투스® 무선 기술, IEEE 802.11에 기술된 통신 프로토콜들(임의의 IEEE 802.11 개정판들을 포함함), (GSM, CDMA, UMTS, EV-DO, WiMAX, 또는 LTE와 같은) 셀룰러 기술, 또는 Zigbee® 기술을 사용하는 무선 연결들일 수 있다. 예들 내에서, 원격 컴퓨팅 디바이스(230)는 인터넷을 통해 액세스가능할 수 있고, 특정의 웹 서비스(예컨대, 소셜 네트워킹, 사진 공유, 주소록 등)와 연관된 컴퓨팅 클러스터를 포함할 수 있다.
게다가, 도시된 바와 같이, 시스템(200)의 하나 이상의 엔티티들은, 프로세서, 송신기, 수신기, 안테나 등과 같은, 통신 링크들(250)을 가능하게 하는 하드웨어를 포함할 수 있다. 비록 도시되어 있지 않지만, 시스템(200)의 엔티티들 중 하나 이상이 서로 직접 통신할 수 있다(예컨대, 로봇 디바이스(100)가, 제어 시스템(240)을 통하기보다는, 원격 컴퓨팅 디바이스(230) 및 원격 센서들/프로젝터들(220)과 직접 통신할 수 있다)는 것을 잘 알 것이다.
제2 로봇 디바이스(210)는 도 1a 및 도 1b와 관련하여 논의된 로봇 디바이스(100)와 유사하게 또는 상이하게 구성되는 로봇 디바이스일 수 있다. 제2 로봇 디바이스(210)는 로봇 매니퓰레이터 또는 다른 유형의 로봇 디바이스의 형태를 취할 수 있다. 예들 내에서, 제2 로봇 디바이스(210)는, 가능한 것들 중에서도 특히, 2개의 로봇 디바이스들의 환경과 연관된 데이터, 2개의 로봇 디바이스들의 장래의 궤적들과 연관된 데이터, 및 진단 데이터와 같은, 데이터를 (앞서 살펴본 바와 같이, 어쩌면 직접 또는 제어 시스템(240)을 통해) 로봇 디바이스(100)와 교환할 수 있다.
일부 예에서, 제2 로봇 디바이스(210)는 로봇 디바이스(100)에 근접하여 또는 로봇 디바이스(100)로부터 가까운 거리에 있는 다른 곳에 위치될 수 있다. 다른 예에서, 제2 로봇 디바이스(210)는 로봇 디바이스(100) 및/또는 시스템(200)의 다른 엔티티들 중 임의의 것과 상이한 환경에 위치될 수 있다. 예들 내에서, 2개의 로봇 디바이스들 사이에서 전달되는 데이터는 물론, 시스템(200)의 엔티티들 사이에서 전달되는 다른 데이터가, 가능한 것들 중에서도 특히, 충돌 회피, 궤적 계획(trajectory planning), 및/또는 각각의 로봇 디바이스의 가상 안전 케이지들의 결정/투사와 연관될 수 있다.
이 제2 로봇 디바이스(210)가 또한 제어 시스템(240)과 통신하고/하거나 시스템(200)의 하나 이상의 엔티티들과 직접 통신하고 있을 수 있는 다른 로봇 디바이스들도 나타낼 수 있다는 것을 잘 알 것이다.
원격 센서들/프로젝터들(220)은 시스템(200)의 엔티티들 중 하나 이상(즉, 로봇 디바이스들(100, 210))으로부터 원격지에 위치되고 본원에 기술되는 동작들을 수행하도록 동작가능한 임의의 유형의 센서들 또는 프로젝터들일 수 있다. 본원에 기술되는 방법들에 따르면, 예를 들어, 원격 센서들/프로젝터들(220)은, 로봇 디바이스들의 일부로서 위치된 하나 이상의 센서들 또는 프로젝터들과 함께, 로봇 디바이스들의 환경과 연관된 데이터를 수집하도록 그리고/또는 정보를 로봇 디바이스들의 환경에 제공하고/하거나 정보를 원격 컴퓨팅 디바이스(230)에 제공하도록 구성될 수 있다. 예로서, 로봇 디바이스(100) 및 제2 로봇 디바이스(210)가 그들 각자의 가상 안전 케이지들의 업데이트된 경계들 또는 다른 특성들을 (제어 시스템(240)의 도움을 받아) 결정한 후에, 하나 이상의 원격 프로젝터들(220) 및/또는 로봇 디바이스들에 로컬인 하나 이상의 프로젝터들은, 3D 홀로그램 또는 2D 직교 투영과 같은, 가상 안전 케이지들의 시각적 표현을 환경 내로 투사할 수 있다. 그에 부가하여 또는 대안적으로, 하나 이상의 원격 스피커들, 경적들 등이 가상 안전 케이지들과 연관된 오디오 표현을 제공할 수 있다. 이 예에 따르면, 제어 시스템(240)은 또한 시각적 표현과 오디오 표현 중 하나 이상을 원격 컴퓨팅 디바이스(230)에 제공할 수 있다. 예를 들어, 원격 컴퓨팅 디바이스(230)는 가상 안전 케이지의 시각적 표현을 원격 컴퓨팅 디바이스의 사용자에게 디스플레이할 수 있다. 다른 예들이 또한 가능하다.
원격 컴퓨팅 디바이스(230)는, 랩톱 컴퓨터, 휴대폰, 웨어러블 컴퓨팅 디바이스(예컨대, 머리 또는 손목 장착가능 디스플레이), 태블릿 컴퓨팅 디바이스 등과 같은, 데이터를 수신하고 데이터에 대응하거나 데이터와 연관된 정보를 디스플레이할 수 있는 임의의 유형의 디바이스일 수 있다. 원격 컴퓨팅 디바이스(230)는 프로세서 및 디스플레이를 포함하는 디스플레이 시스템을 포함할 수 있다. 디스플레이는, 예를 들어, 광학 씨-스루 디스플레이(optical see-through display), 광학 씨-어라운드 디스플레이(optical see-around display), 또는 비디오 씨-스루 디스플레이(video see-through display)일 수 있다. 프로세서는 제어 시스템(240)으로부터 그리고/또는 시스템(200)의 다른 엔티티들로부터 데이터를 수신하고 디스플레이 상에 디스플레이하기 위한 데이터를 구성할 수 있다. 프로세서는, 예를 들어, 마이크로프로세서 또는 디지털 신호 프로세서와 같은, 임의의 유형의 프로세서일 수 있다.
원격 컴퓨팅 디바이스(230)는, 프로세서에 결합된 메모리와 같은, 온보드 데이터 저장소를 추가로 포함할 수 있다. 메모리는, 예를 들어, 프로세서에 의해 액세스되고 실행될 수 있는 소프트웨어를 저장할 수 있다.
게다가, 원격 컴퓨팅 디바이스(230)는, 제어 시스템(240)과 같은, 시스템(200)의 하나 이상의 엔티티들을 대신하여 동작들을 수행하도록 구성될 수 있다. 예를 들어, 원격 컴퓨팅 디바이스(230)는 로봇 디바이스(100)로부터 데이터를 수신하고, 로봇 디바이스(100)를 대신하여 그리고/또는 제어 시스템(240)을 대신하여 특정 처리 동작들을 수행하는 것에 의해 로봇 디바이스의 가상 안전 케이지를 결정할 수 있다. 원격 컴퓨팅 디바이스(230)는 이어서 그 결과 얻어진 데이터를 다시 시스템(200) 내의 다른 엔티티들로 송신할 수 있다. 이 기능은 "클라우드" 컴퓨팅이라고 지칭될 수 있다.
일부 실시예에서, 로봇 디바이스들은, 로봇 디바이스들이 학습된 거동들을 가능하게 하기 위해 경험들을 다른 로봇 디바이스들과 공유하기 위해, 데이터를 제어 시스템(240) 또는 서버와 같은 다른 원격 컴퓨팅 디바이스(도시되지 않음)로 업로드할 수 있다. 예를 들어, 로봇 디바이스(100)는 경로를 횡단하고 장애물을 만날 수 있으며, (예컨대, 클라우드를 통해) 제2 로봇 디바이스(210)와 같은, 다른 로봇 디바이스들에 장애물의 위치를 통보할 수 있다. 다른 예로서, 로봇 디바이스(100)는 원격 센서들(220)을 통해 움직이는 물체에 관한 정보를 획득할 수 있고, 움직이는 물체의 장래의 궤적 및 속도를 추정할 수 있다. 로봇 디바이스(100)는 이어서 그 정보를 제어 시스템(240)과 그리고/또는 제2 로봇 디바이스(210)와 공유할 수 있다. 제2 로봇 디바이스(210)는 이어서 움직이는 물체의 장래의 궤적 및 속도에 응답하여 특정 조치들을 취할 수 있다. 대체로, 로봇 디바이스들(100, 210)은, 각각의 로봇이 이전의 로봇의 학습된 경험을 기반으로 할 수 있도록, 보다 빠른 적응을 가능하게 하기 위해 수집되는 데이터를 공유하도록 구성될 수 있다. 게다가, 시스템(200)의 각각의 엔티티는, 본원에 기술되는 다양한 실시예에 따라, 실질적으로 실시간인 데이터에 액세스할 수 있다.
다른 예들 내에서, 시스템(200)은 도 2에 도시된 엔티티들 중 하나와 통합된 안전 시스템(도시되지 않음)을 포함할 수 있다. 안전 시스템은 본원에 기술되는 동작들을 수행하거나 가상 안전 케이지들에 따른 다른 동작들을 수행하도록 구성될 수 있다.
도 3은 본원에 기술되는 적어도 일부 실시예에 따른, 환경과의 로봇 상호작용을 검출하고, 재구성하며, 용이하게 하는 예시적인 방법의 플로우차트이다. 도 3에 도시된 방법(300)은, 예를 들어, 도 1a 내지 도 2에 도시된 로봇 디바이스들 및 시스템들에서 사용될 수 있거나, 예를 들어, 제어 시스템들(150 및 240) 중 하나 이상과 같은, 도 1a 내지 도 2의 임의의 컴포넌트들의 조합에 의해 수행될 수 있는 방법의 일 실시예를 제시한다. 그에 부가하여, 방법의 이러한 실시예는 도 4a 및 도 4b, 도 5a 및 도 5b, 그리고 도 6에 예시된 시스템들 및 양태들에 따라 수행될 수 있다. 방법(300)은 블록들(302 내지 308) 중 하나 이상에 의해 예시되는 하나 이상의 동작들 또는 행동들을 포함할 수 있다. 블록들이 순차적 순서로 예시되어 있지만, 이 블록들이, 어떤 경우에, 병렬로, 그리고/또는 본원에 기술되는 것들과 상이한 순서로 수행될 수 있다. 또한, 다양한 블록들이, 원하는 구현에 기초하여, 보다 적은 수의 블록들로 결합되고, 부가의 블록들로 나누어지고/나누어지거나 제거될 수 있다.
그에 부가하여, 본원에 개시되는 방법(300) 및 다른 프로세스들 및 방법들에 있어서, 플로우차트는 본 실시예들의 하나의 가능한 구현의 기능 및 동작을 나타낸다. 이와 관련하여, 각각의 블록은 프로세스에서의 특정의 논리적 동작들 또는 단계들을 구현하기 위해 프로세서에 의해 실행가능한 하나 이상의 명령어들을 포함하는, 모듈, 세그먼트, 또는 프로그램 코드의 일부분을 나타낼 수 있다. 프로그램 코드는, 예를 들어, 디스크 또는 하드 드라이브를 비롯한 저장 디바이스와 같은, 임의의 유형의 컴퓨터 판독가능 매체에 저장될 수 있다. 컴퓨터 판독가능 매체는, 예를 들어, 레지스터 메모리, 프로세서 캐시, 및 RAM(Random Access Memory)과 같이 짧은 기간 동안 데이터를 저장하는 컴퓨터 판독가능 매체와 같은, 비일시적 컴퓨터 판독가능 매체를 포함할 수 있다. 컴퓨터 판독가능 매체는 또한, 예를 들어, ROM(read only memory), 광학 또는 자기 디스크, CD-ROM(compact-disc read only memory)과 같은, 보조 또는 영속적 장기 저장소와 같은 비일시적 매체를 포함할 수 있다. 컴퓨터 판독가능 매체는 또한 임의의 다른 휘발성 또는 비휘발성 저장 시스템일 수 있다. 컴퓨터 판독가능 매체는, 예를 들어, 컴퓨터 판독가능 저장 매체, 유형적(tangible) 저장 디바이스, 또는 다른 제조 물품으로 간주될 수 있다.
그에 부가하여, 본원에 개시되는 방법(300) 및 다른 프로세스들 및 방법들에 대해, 도 3에서의 각각의 블록은 프로세스에서의 특정의 논리적 동작들을 수행하도록 배선되어 있는 회로부를 나타낼 수 있다.
방법(300)의 동작들은 컴퓨팅 디바이스에 의해 완전히 수행될 수 있거나, 다수의 컴퓨팅 디바이스들 및/또는 서버에 걸쳐 분산될 수 있다. 일부 예에서, 컴퓨팅 디바이스는 컴퓨팅 디바이스에 결합된 센서들 또는 다른 컴포넌트들로부터 정보를 수신할 수 있거나, 컴퓨팅 디바이스가 서버인 경우, 정보가 정보를 수집하는 다른 디바이스로부터 수신될 수 있다. 컴퓨팅 디바이스는, 예를 들어, 물리적 물체들의 치수를 결정하기 위해 서버와 추가로 통신할 수 있고, 여기서 서버는 로봇 디바이스들 및 움직이는 물체들의 축적된 미리 결정된 궤적들의 데이터베이스, 및/또는 방법(300)의 수행을 용이하게 할 수 있는 다른 정보를 포함할 수 있다.
블록(302)에서, 방법(300)은 로봇 디바이스가 로봇 디바이스에 의해 점유된 물리적 환경에서 물리적 동작을 수행할 것을 요청하는 지시를 수신하는 단계를 포함한다. 예들 내에서, 지시는, 실행될 때, 로봇 디바이스로 하여금 동작들의 시퀀스를 수행하게 할 수 있는 하나 이상의 하위지시들을 포함할 수 있다. 지시는, 실행될 때, 또한 로봇 디바이스의 다수의 컴포넌트들로 하여금 각자의 동작들을 수행하게 할 수 있다. 예를 들어, 지시는 로봇 디바이스에 의해 점유된 물리적 환경에서 물리적 물체를 움직이라는 로봇 디바이스에 대한 지시일 수 있다. 그 시나리오에서, 그 지시의 실행은 로봇 디바이스로 하여금 로봇 디바이스의 현재 위치로부터 물리적 물체에 근접한 위치로 움직이게 할 수 있다. 움직이는 동안 또는 물리적 물체에 근접한 위치에 고정된 채로 있는 동안, 로봇 디바이스는 이어서 물리적 물체를 파지하여 움직이기 위해, 어쩌면 이어서 또다시 물리적 물체의 이전 위치로부터 멀어지게 움직이면서, 로봇 팔 또는 다른 로봇 매니퓰레이터를 사용할 수 있다. 다른 예시적인 지시들이 또한 가능하다.
지시가 로봇 디바이스 자체에 의해 또는 로봇 디바이스를 제어하도록 구성되어 있는, 로봇 디바이스에 결합된 또는 로봇 디바이스로부터 원격지에 위치된 제어 시스템 또는 다른 컴퓨팅 디바이스에 의해 수신될 수 있다. 게다가, 방법(300)의 동작들 중 하나 이상이 수신된 지시의 실제 실행 이전에, 그 동안에, 또는 그 후에 수행될 수 있다는 것을 잘 알 것이다.
블록(304)에서, 방법(300)은, 지시를 수신한 것에 응답하여, 로봇 디바이스의 하나 이상의 물리적 컴포넌트들의 하나 이상의 추정된 궤적들을 (예컨대, 하나 이상의 프로세서들에 의해) 결정하는 단계를 포함하고, 여기서 하나 이상의 추정된 궤적들은 로봇 디바이스가 물리적 동작을 수행할 때 하나 이상의 물리적 컴포넌트들이 따라 움직일 것으로 추정되는 하나 이상의 궤적들이며, 여기서 하나 이상의 추정된 궤적들은 하나 이상의 물리적 컴포넌트들의 하나 이상의 파라미터들에 기초한다. 물리적 동작을 수행하는 데 관여되는 로봇 디바이스의 하나 이상의 물리적 컴포넌트들의 하나 이상의 파라미터들은, 가능한 것들 중에서도 특히, 하나 이상의 물리적 컴포넌트들의 최대 토크, 하나 이상의 물리적 컴포넌트들의 최대 파워 출력(power output), 하나 이상의 물리적 컴포넌트들의 관절들의 각도들, 2개 이상의 물리적 컴포넌트들 간의 거리, 하나 이상의 물리적 컴포넌트들의 유효 질량(즉, 하나 이상의 물리적 컴포넌트들의 운동량이 얼마인지), 하나 이상의 물리적 컴포넌트들의 운동 범위를 포함할 수 있다.
예들 내에서, 특정의 물리적 컴포넌트들의 특정의 파라미터들이 물리적 컴포넌트들의 다른 파라미터들보다 우선순위를 부여받을 수 있다. 다른 예들 내에서, 특정의 운동 범위들을 갖는 물리적 컴포넌트들이 로봇 디바이스의 다른 물리적 컴포넌트들보다 우선순위를 부여받을 수 있다. 다른 예들 내에서, 특정의 물리적 컴포넌트들의 특정의 파라미터들은 동일한 또는 다른 물리적 컴포넌트들의 다른 파라미터들에 영향을 미칠 수 있고, 이와 같이, 하나 이상의 추정된 궤적들을 결정할 때 컴포넌트들 사이의 관계들이 고려될 수 있다(즉, 하나의 관절은 특정의 질량을 가질 수 있고 상이한 질량을 가지는 다른 관절에 결합될 수 있으며, 이는 물리적 동작을 수행할 때 관절들의 조합의 움직임에 영향을 미칠 수 있다).
예들 내에서, 컴퓨팅 디바이스는 하나 이상의 추정된 궤적들을 결정하기 위해 그리고 방법(300)의 다른 동작들을 수행하기 위해 하나 이상의 유형들의 모델 예측 제어(예컨대, 이동 구간 제어(receding horizon control)), 또는 다른 유형들의 프로세스 제어를 이용할 수 있다. 예를 들어, 물리적 컴포넌트들 중 하나 이상의 물리적 컴포넌트들의 현재 가속도, 파워 출력, 운동량 등과 같은, 로봇 디바이스 및 그의 물리적 컴포넌트들의 현재 상태가 주어지면, 컴퓨팅 디바이스는 로봇 디바이스 및 그의 컴포넌트들이 특정의 기간 내에 있을 수 있는 복수의 상태들을 결정할 수 있다. 그에 따라, 컴퓨팅 디바이스는 물리적 컴포넌트들이, 지시의 실행 이후의, 지시의 수신 이후의, 또는 다른 가능한 참조 시점들 이후의 미리 결정된 기간과 같은, 미리 결정된 기간 내에 따라갈 것으로 추정되는 물리적 컴포넌트들의 하나 이상의 추정된 궤적들을 결정할 수 있다.
예들 내에서, 컴퓨팅 디바이스는 또한 하나 이상의 추정된 궤적들을 결정할 때 로봇 디바이스 및/또는 다른 로봇 디바이스들과 연관된 과거 상태들, 과거 움직임들, 및 다른 이전에 결정된 정보를 고려할 수 있다.
컴퓨팅 디바이스는 또한 로봇 디바이스의 하나 이상의 물리적 컴포넌트들과 연관된 불확실성을 분석할 수 있고, 여기서 이러한 불확실성은 하나 이상의 결정된 추정된 궤적들에 노이즈를 생성할 수 있다. 그에 따라, 하나 이상의 추정된 궤적들을 결정하는 것은 로봇 디바이스의 하나 이상의 물리적 컴포넌트들과 연관된 불확실성에 기초하여 하나 이상의 추정된 궤적들을 결정하는 것을 포함할 수 있다. 게다가, 하나 이상의 추정된 궤적들을 결정하는 것은 다수의 추정된 궤적들을 결정하는 것, 및 각자의 확률들(즉, 신뢰도 점수들 또는 다른 불확실성 메트릭들)을 다수의 결정된 추정된 궤적들을 따라 움직이는 로봇 디바이스에 연관시키는 것을 포함할 수 있다. 예로서, 물리적 동작을 수행하는 것에 관여되는 로봇 디바이스의 하나 이상의 물리적 컴포넌트들은 동작을 수행할 때 하나의 궤적을 따라 움직일 가능성이 95%일 수 있지만, 또한 동작을 수행할 때 상이한 궤적을 따라 움직일 가능성도 5%일 수 있다. 따라서, 컴퓨팅 디바이스는 그 각자의 확률들에 대한 2개의 추정된 궤적들을 결정할 수 있다. 관련된 예들 내에서, 수신된 지시에 응답하여 일군의 궤적들이 결정될 수 있고, 일군의 궤적들의 각각의 구성원은 연관된 신뢰도 점수를 갖는다. 이러한 예들에서, 일군의 궤적들의 구성원들이 하나로 집성(aggregate)될 수 있고/있거나 중첩(superimpose)될 수 있다. 다른 예들이 또한 가능하다.
예시적인 시나리오에서, 하나 이상의 모터들이 로봇 디바이스가 물리적 동작을 수행하는 데 관여될 수 있고, 모터들의 지속가능 토크의 범위와 같은, 그 모터들의 하나 이상의 파라미터들에 기초하여, 컴퓨팅 디바이스는 로봇 디바이스가 물리적 동작을 수행하기 시작한 후 10초 내에 로봇 디바이스가 공간에서 점유할 수 있는 궤적을 추정할 수 있다. 관련된 예로서, 컴퓨팅 디바이스는 먼저 모터들에 의한 이전의 궤적들, 모터 파라미터들의 이전 상태들, 및/또는 모터들과 연관된 다른 정보의 데이터베이스에 질의하고, 이어서 이러한 정보가 모터들 중 하나의 모터의 중간 레벨의 고장 확률을 나타낸다고 결정할 수 있다. 컴퓨팅 디바이스는 이어서, 중간 레벨의 고장 확률을 고려하여, 물리적 동작을 수행하기 위해 하나 이상의 모터들과 연관된 하나 이상의 추정된 궤적들을 결정할 수 있다. 다른 예들이 또한 가능하고, "불확실성"이, 본원에 기술되는 바와 같이, 컴포넌트 고장과 연관된 확률들로 제한되어서는 안된다는 것을 잘 알 것이다. 오히려, 불확실성은 로봇 디바이스에 의한 물리적 동작의 수행에 관여된 하나 이상의 궤적들을 변경할 수 있는 로봇 디바이스의 하나 이상의 물리적 컴포넌트들과 연관된 임의의 인자를 나타낼 수 있다.
일부 실시예에서, 로봇 디바이스의 물리적 컴포넌트들의 하나 이상의 추정된 궤적들은 물리적 컴포넌트들 중 하나 이상의 물리적 컴포넌트들의 운동 범위의 적어도 일부분의 형태를 취할 수 있다. 물리적 컴포넌트들이 미리 결정된 기간 내에 따라갈 것으로 추정되는 물리적 컴포넌트들의 하나 이상의 추정된 궤적들에 부가하여 또는 그 대신에, 추정된 운동 범위들이 결정될 수 있다. 게다가, 물리적 컴포넌트들 중 하나 이상의 물리적 컴포넌트들과 연관된 불확실성의 레벨들도 결정될 수 있다. 이것은 각각의 물리적 컴포넌트에 대해 다수의 운동 범위들이 결정될 수 있게 하고, 각각의 운동 범위는, 그 각자의 물리적 컴포넌트의 하나 이상의 파라미터들에 따라, 그 특정의 운동 범위가 발생할 가능성을 나타내는 주어진 확률/불확실성에 대응한다.
예들 내에서, 하나 이상의 추정된 궤적들의 결정은 또한 하나 이상의 추정된 궤적들이 실행되어, 모터들 및/또는 다른 컴포넌트들로 하여금 동시적으로 또는 비동시적으로 움직이게 하고 하나 이상의 추정된 궤적들을 따라 움직이는 동안 공간의 체적을 스쳐 지나가게 할 때 물리적 동작을 수행하는 데 관여된 하나 이상의 물리적 컴포넌트들이 점유할 수 있는 공간의 체적의 결정을 수반할 수 있다. 공간의 체적을 결정하기 위해, 컴퓨팅 디바이스는 하나 이상의 물리적 컴포넌트들의 현재 운동량, 하나 이상의 물리적 컴포넌트들과 연관된 진단 정보, 또는 하나 이상의 물리적 컴포넌트들의 현재 상태와 연관되어 있기도 하고 하나 이상의 물리적 컴포넌트들의 과거 상태(또는 로봇 디바이스의 일부로서 포함되지 않은 하나 이상의 관련된 물리적 컴포넌트들의 과거 상태)와 연관되어 있기도 한, 앞서 살펴본 다른 인자들과 같은, 다양한 인자들을 고려할 수 있다.
예들 내에서, 하나 이상의 체적들이 결정될 수 있고, 체적들 중 하나 이상의 체적들은 각자의 확률들과 연관되어 있다. 그리고 결정된 추정된 궤적들의 논의에 따르면, 공간의 다수의 결정된 체적들이 하나로 집성되거나, 중복(superpose)되거나, 중첩될 수 있다. 예를 들어, 다수의 결정된 추정된 궤적들의 각자의 추정된 궤적들에 대응하는 공간의 다수의 체적들의 중복은 로봇 디바이스가 물리적 동작을 수행하기 위해 점유할 것으로 추정되는 공간의 다수의 상이한 체적들을 포함할 수 있다.
다른 추가 예에서, 컴퓨팅 디바이스는, 다수의 시뮬레이션들을 실행하고 추정된 궤적들과 연관된 파라미터들을 컴퓨팅 디바이스에 반환하는, 서버에 물리적 동작을 수행하라는 지시를 제공하는 것에 의해 추정된 궤적들을 결정할 수 있다.
블록(306)에서, 방법(300)은 로봇 디바이스가 물리적 동작을 수행하는 동안 물리적 환경에서 점유할 것으로 추정되는 공간의 가상 표현(즉, 가상 안전 케이지)을 결정하는 단계를 포함하고, 여기서 공간은 로봇 디바이스의 하나 이상의 물리적 컴포넌트들의 하나 이상의 추정된 궤적들에 기초하여 결정된다. 예를 들어, 하나 이상의 추정된 궤적들이 복수의 확률들, 신뢰도 점수들, 또는 다른 메트릭들과 연관된 다수의 추정된 궤적들일 때, 로봇 디바이스의 물리적 환경에서의 공간의 가상 표현은 다수의 추정된 궤적들에 기초하여 그리고 각자의 확률들에 추가로 기초하여 결정될 수 있고, 각자의 확률들은 로봇 디바이스가 다수의 결정된 추정된 궤적들을 따라 움직이는 것(즉, 로봇 디바이스의 물리적 컴포넌트들이 주어진 궤적을 점유할 가능성)에 연관되어 있다.
일부 예에서, 가상 표현은 장래에 로봇 디바이스의 물리적 컴포넌트들에 의해 점유될 공간의 적어도 일부분을 포함할 수 있는 가상 경계 또는 가상 전체 체적(virtual full volume)의 형태를 취할 수 있다.
예들 내에서, 가상 표현은, 공간의 체적을 포함하는 구면, 타원면, 또는 포물면 경계/체적과 같은, 보다 보수적인 가상 경계/체적의 형태를 취할 수 있다. 다른 열린 이차 곡면(open quadric surface)들 또는 닫힌 이차 곡면(closed quadric surface)들(및/또는 연관된 체적들)도 가능하다. 이러한 예들 내에서, 가상 표현은 로봇 디바이스가 시간의 경과에 따라 물리적으로 점유할 실제 공간을 초과하는 로봇 디바이스의 물리적 환경에서의 보다 많은 공간을 포함할 수 있다. 다른 예들 내에서, 가상 표현은 로봇 디바이스의 움직임의 경계를 보다 제한적으로 표시하는 등위면(isosurface) 또는 다른 곡면 또는 체적의 형태를 취할 수 있다. 예를 들어, 다수의 로봇 디바이스들 및/또는 사람들이 서로 아주 근접하여 작업을 하고 있는 환경들에서는, 보다 덜 보수적인 가상 표현들이 바람직할 수 있다.
일부 시나리오에서, 수신된 지시는 물리적 물체를 집어들고 움직이라는 로봇 디바이스에 대한 지시일 수 있다. 이러한 시나리오에서, 컴퓨팅 디바이스는, 예를 들어, 하나 이상의 추정된 궤적들에 기초하여 그리고/또는 물리적 물체의 하나 이상의 미리 결정된 특성들(예컨대, 크기, 중량 등)에 기초하여, 로봇 디바이스가 점유할 물리적 환경에서의 공간과 로봇 디바이스가 물리적 물체를 움직이는 것에 기초하여 물리적 물체가 점유할 것으로 추정되는 공간 둘 다의 가상 표현을 결정할 수 있다. 예를 들어, 이러한 지시를 수신한 것에 응답하여, 컴퓨팅 디바이스는 로봇 디바이스에 의해 움직여져야만 하는 물리적 물체의 크기에 관한 정보를 가질 수 있는 데이터베이스에 질의할 수 있다. 컴퓨팅 디바이스는 이어서 하나 이상의 추정된 궤적들을 결정할 때 또는 가상 표현을 결정할 때 물리적 물체의 크기를 고려할 수 있다. 예를 들어, 컴퓨팅 디바이스는 로봇 디바이스 상의 기준점으로부터 가장 멀리 있는 물리적 물체의 표면 상의 점을 사용하여 공간에서의 자취 체적(traced-out volume)을 결정할 수 있고, 자취 체적은 로봇 디바이스 및 물리적 물체가 로봇 디바이스가 물리적 물체를 집어들고 움직일 때 경과할 시간의 적어도 일부분 동안 점유할 공간을 나타낸다.
컴퓨팅 디바이스가 물리적 컴포넌트들이 미리 결정된 기간 내에 따라갈 것으로 추정되는 물리적 컴포넌트들의 하나 이상의 추정된 궤적들을 결정하는 일부 실시예에서, 가상 표현의 공간은 따라서 로봇 디바이스가 미리 결정된 기간 동안 물리적 동작을 수행하기 위해 점유할 것으로 추정되는 공간을 포함할 수 있다.
예들 내에서, 새로운 지시 또는 하위지시가 컴퓨팅 디바이스에 의해 수신되거나 실행될 때마다 새로운 가상 표현이 결정될 수 있다. 이와 같이, 가상 표현은 새로운 지시가 수신되거나 추정된 궤적에 대한 수정이 결정될 때 실시간으로 변하는 애니메이션화된 표현일 수 있다. 다른 예들 내에서, 컴퓨팅 디바이스는 사용자 입력 또는 조정을 수행하라는 커맨드를 나타내는 다른 유형의 입력을 수신한 것에 응답하여 가상 표현을 조정(즉, 조절)하도록 구성될 수 있다. 이러한 예들 내에서, 가상 표현은, 확률 및 위험과 같은 각종의 인자들에 기초하여 조절될 수 있다. 예를 들어, 가상 표현이 덜 보수적인 가상 안전 케이지로부터 보다 보수적인 가상 안전 케이지로 조절될 수 있고, 여기서 보다 보수적인 가상 안전 케이지는, 부가의 장래의 궤적들이 보다 가능성이 적음에도 불구하고, 그 장래의 궤적들과 연관된 공간을 포함한다. 이러한 보수적인 조절은 충돌 또는 다른 위험들의 우려를 감소시킬 수 있다. 대안적으로, 가상 표현이 높은 신뢰도 점수들을 갖는 장래의 궤적들 및 공간만을 포함하도록 조절될 수 있다. 다른 예들이 또한 가능하다.
또 다른 예들 내에서, 제1 위치로부터 움직이고, 제2 위치에서 물체를 집어들며, 물체를 제3 위치로 옮겨놓으라는 로봇 디바이스에 대한 지시를 수신할 때, 가상 표현은 로봇 디바이스가 이 작업을 수행하는 것에 따라 그리고 또한 앞서 논의된 미리 결정된 기간에 기초하여 자동으로 또는 수동으로 조절될 수 있다. 예를 들어, 이러한 지시를 수신하기 전에, 가상 표현은 제1 위치에서 로봇 디바이스를 둘러싸는 공간의 보다 작은 체적을 포함할 수 있다. 이어서, 지시를 수신할 때(또는 그로부터 잠시 후에), 가상 표현이 제2 위치 그리고 어쩌면 그에 부가하여 제3 위치는 물론, 로봇 디바이스가 제1 위치와 제2 사이에서 그리고 제2 위치와 제3 위치 사이에서 주행/점유할 수 있는 하나 이상의 가능한 장래의 경로들(및 연관된 체적들)을 포함하도록 확장될 수 있다. 제2 위치에 도달할 때, 또는 로봇 디바이스가 제2 위치로 주행할 때, 가상 표현은, 로봇 디바이스가 제1 위치로부터 제2 위치로 주행할 때 이전에 점유했던 경로/공간을 더 이상 포함하지 않도록, 축소되도록 동적으로 조절될 수 있다. 로봇 디바이스가 제3 위치로 주행할 때 또는 로봇 디바이스가 제3 위치에 도달할 때, 유사한 추가의 조절이 이어서 행해질 수 있다. 다른 예들이 또한 가능하다. 앞서 논의된 바와 같이, 이들 및 다른 예들에서, 로봇 디바이스는 프로젝터들 또는 로봇 디바이스가, 짧은 기간 동안이든 보다 오랜 기간 동안이든 간에, 장래에 어디를 점유할지의 표시를 제공하도록 구성된 다른 디바이스들과 통신할 수 있다.
그에 따라, 블록(308)에서, 방법(300)은 공간의 위치의 표시를, 물리적 환경 내에, 제공하는 단계를 포함한다. 게다가, 본원에 기술되는 예들의 적어도 일부분 내에서, 표시는 집성된 또는 중복된 공간들/경계들의 시각적 표시들을 포함할 수 있고/있거나, 하나 이상의 추정된 궤적들과 연관된 이러한 공간들/경계들의 구별가능한 중첩된 시각적 표시들을 포함할 수 있다. 또한 게다가, 표시는 블록(304)에서 결정된 하나 이상의 추정된 궤적들, 및 블록(306)에서 결정된 대응하는 공간들/경계들과 연관된 확률, 신뢰도 점수, 또는 다른 메트릭의 시각적 표시를 포함할 수 있다. 그에 더하여 게다가, 표시는 블록(304)에서 결정된 하나 이상의 추정된 궤적들의 시각적 표시, 및/또는 오디오 표시, 및/또는 다른 유형의 표시를 포함할 수 있다.
예들 내에서, 오디오 표시들은 경보들, 주변 소음, 하나 이상의 음성 발화(spoken utterance)들, 미리 녹음된 안전 메시지들, 구조화된 오디오 패턴들, 및 다양한 주파수, 리듬, 볼륨, 음색 등을 갖는 다른 유형들의 오디오를 포함할 수 있다. 공간의 상이한 결정된 가상 표현들에 대해 상이한 오디오 표시들이 사용될 수 있다. 그에 부가하여 또는 대안적으로, 다수의 상이한 오디오 표시들이 표시에 포함될 수 있다. 예로서, 로봇 디바이스 또는 외부 센서들이 로봇 디바이스의 물리적 환경 내에서 움직이는 물체를 검출할 때, 컴퓨팅 디바이스는, 움직이는 물체가 로봇 디바이스로부터 주어진 거리 범위 내에 있을 때, 소리가 환경 내의 스피커를 통해 재생되게 할 수 있고, 움직이는 물체가 로봇 디바이스로부터 다른 거리 범위들 내에 있을 때 다른 상이한 소리들이 재생되게 할 수 있다(예컨대, 움직이는 물체가 로봇 디바이스에 아주 근접하여 있고 어쩌면 로봇 디바이스와 충돌할 위험이 있을 때 보다 크고 보다 두드러진 소리들이 들릴 수 있음). 다른 예로서, 로봇 디바이스와 연관된 현재 가상 표현이 보다 보수적인 가상 표현(즉, 보다 적은 안전 위험을 갖는 보다 큰 가상 안전 케이지)일 때 환경에서 조용하고 잔잔한 소리가 간헐적으로 또는 계속하여 재생될 수 있는 반면, 현재 가상 표현이 덜 보수적인 가상 표현일 때 환경에서 보다 큰 소리가 간헐적으로 또는 계속하여 재생될 수 있거나, 그 반대일 수 있다. 다른 예들이 또한 가능하다.
표시는 2D 표시들 및/또는 3D 표시들을 포함할 수 있다. 예들 내에서, 로봇 디바이스에 부착되거나 로봇 디바이스로부터 원격지에 위치된 프로젝터는 공간과 연관된 광을 투사할 수 있다. 예를 들어, 광이 로봇 디바이스가 장래에 점유할 수 있는 공간 아래쪽에 있는 바닥의 일부 또는 모든 영역들 상으로 투사될 수 있고, 경고 광으로서 역할할 수 있다. 광이 로봇 디바이스의 물리적 환경에서의 벽, 천장, 또는 다른 표면과 같은 다른 표면에도 투사될 수 있다. 그에 부가하여 또는 대안적으로, 광이 임의의 특정의 표면에 조준됨이 없이 공중으로 투사될 수 있다. 광이 하나 이상의 색상들 또는 색조들로서 투사될 수 있다. 예를 들어, 공간이 불확실성의 영역들 또는 체적들을 포함할 때, 로봇 디바이스가 장래에 점유할 수 있는 가능성이 보다 적은 영역들을 표시하기 위해 상이한 색상 또는 밝기의 광이 사용될 수 있다. 다른 예들이 또한 가능하다.
다른 예들 내에서, 표시는 로봇 디바이스의 물리적 환경에서의 표면 상에 투사되는 공간의 2D 영상의 형태를 취할 수 있다. 예를 들어, 2D 영상은 3D 가상 표현의 직교 투영(예컨대, 속이 빈 3D 경계 또는 전체 3D 체적)일 수 있다. 3D 가상 표현은, 예를 들어, 바닥 또는 벽 상으로 직교 투영될 수 있고, 앞서 기술된 광보다 더 상세하고 구별가능한 시각적 표시로서 역할할 수 있다. 다른 예로서, 2D 영상은, 가상 안전 케이지의 현재 상태와 연관된 하이라이트된 또는 다른 방식으로 표시된 2D 영역을 포함하는, 물리적 환경의 하향식 또는 다른 투시 맵(perspective map)일 수 있다. 이 예들 내에서, 2D 영상은 결정된 하나 이상의 추정된 궤적들을 표현하는 하나 이상의 2D 경로들을 묘사할 수 있다(예컨대, 2D 영상은 로봇 디바이스의 하나 이상의 물리적 컴포넌트들의 장래의 경로를 표현하는 자취 라인(traced line)을 포함할 수 있다). 게다가, 2D 영상은 또한 로봇 디바이스의 개개의 컴포넌트들 및 그 각자의 궤적들을 묘사할 수 있다. 또한 게다가, 2D 영상은 하나 이상의 추정된 궤적들과 연관된 확률들의 숫자 또는 다른 시각적 표시들을 포함할 수 있다. 다른 예들이 또한 가능하다.
추가의 예들 내에서, 표시는, 레이저(예컨대, 플라즈마 레이저)의 다양한 사용, 간섭, 회절, 광 세기, 및/또는 홀로그래피의 분야에서 알려져 있거나 아직 알려져 있지 않은 다른 파라미터들에 의해 달성되는, 공간의 홀로그래픽 3D 표시의 형태를 취할 수 있다. 이러한 표시는, 로봇 디바이스가 장래에 점유할 공간을 "채우도록" 투사되는, 실제 규모의 홀로그램일 수 있다. 그에 부가하여 또는 대안적으로, 표시가 보다 작은 규모의 홀로그램으로서 투사될 수 있다. 3D 홀로그램은 또한, 로봇 디바이스에 의해 점유된 물리적 환경에서의 공간 내에 투사되는, 결정된 하나 이상의 추정된 궤적들을 표현하는 하나 이상의 3D 경로들을 묘사할 수 있다. 예를 들어, 궤적들은, 가능한 것들 중에서도 특히, 홀로그래픽 영상들로서 시각적으로 표시될 수 있거나, 궤적의 경로를 따라 투사되는 하나 이상의 광(예컨대, 가는, 지향성 레이저)으로서 표시될 수 있다. 3D 홀로그램이 열린 이차 곡면, 닫힌 이차 곡면, 볼록 껍질(convex hull), 등위면, 또는 다른 복합(complex) 또는 비복합(non-complex) 곡면/체적으로서 투사되거나 다른 방식으로 디스플레이될 수 있다.
다른 추가 예들 내에서, 표시는 가상 표현의 3D 모델의 형태를 취할 수 있다. 3D 모델은 결정된 하나 이상의 추정된 궤적들을 표현하는 하나 이상의 3D 경로들을 묘사할 수 있다. 게다가, 3D 모델은 열린 이차 곡면, 닫힌 이차 곡면, 볼록 껍질, 등위면, 또는 다른 복합 또는 비복합 곡면/체적을 포함할 수 있다.
2D 표시들과 유사하게, 3D 표시들은 로봇 디바이스에 의한 일군의 가능한 장래의 움직임들을 표시하기 위해 집성, 중복, 중첩되거나 기타인 다수의 공간들을 포함할 수 있다.
다른 추가 예들 내에서, 표시는 프로젝터, 카메라, 또는 다른 광학 디바이스가 광을 수신된 지시와 연관된 물리적 물체 상에 투사하는 것을 수반할 수 있다. 예를 들어, 로봇 디바이스는 단일의 광 빔을 로봇 디바이스가 들어올리도록 지시받은 상자 상에 투사할 수 있고, 따라서 로봇 디바이스가 상자 쪽으로 움직여 상자를 들어올릴 계획이라는 것을 사람들 또는 다른 로봇 디바이스들에게 알려줄 수 있다. 지시를 수신한 후에 광이 어떤 지점에 투사될 수 있고, 미리 결정된 기간 동안 투사될 수 있다.
다른 추가 예들 내에서, 표시는 로봇 디바이스에 의해 점유된 물리적 환경을 수정하는 진동 표시 또는 다른 유형의 표시의 형태를 취할 수 있다. 예를 들어, 로봇 디바이스에 결합되거나 로봇 디바이스로부터 원격지에 위치된 진동 발생기 디바이스는 물리적 환경에서의 지면의 영역 또는, 물리적 환경에서의 벽, 기둥, 또는 다른 물리적 물체와 같은, 물리적 환경의 다른 부분을 진동시킬 수 있다. 다른 예에서, 컴퓨팅 디바이스는 휴대폰 또는 다른 무선 통신 디바이스와 같은 원격 컴퓨팅 디바이스에 원격 컴퓨팅 디바이스를 진동시키는 통지를 제공할 수 있다. 이러한 진동은 그 원격 컴퓨팅 디바이스의 사용자에게 사용자가 로봇 디바이스의 가상 안전 케이지에 들어갔거나 들어가려고 하고 있음을 경고하는 역할을 할 수 있다. 다른 예들이 또한 가능하다.
일부 실시예에서, 컴퓨팅 디바이스는 표시를, 도 2에 도시된 원격 컴퓨팅 디바이스와 같은, 원격 컴퓨팅 디바이스에 제공할 수 있다. 앞서 살펴본 바와 같이, 원격 컴퓨팅 디바이스는 표시를 원격 컴퓨팅 디바이스에 디스플레이하거나 다른 방식으로 제공하도록 구성되어 있는 컴퓨팅 디바이스일 수 있다. 예를 들어, 컴퓨팅 디바이스는 가상 안전 케이지의 동적 가상 3D 모델 또는 다른 유형의 3D 표현을 머리 장착가능 디스플레이를 갖는 웨어러블 컴퓨팅 디바이스에 제공할 수 있다. 이러한 표시가 증강 현실 능력도 갖는 다른 컴퓨팅 디바이스들에 제공될 수 있다. 다른 예로서, 컴퓨팅 디바이스는 3D 모델을 터치스크린을 갖는 태블릿 컴퓨팅 디바이스에 제공할 수 있고, 여기서 태블릿 컴퓨팅 디바이스의 사용자는 이어서 3D 모델 상에서 줌인하거나 3D 모델과 다른 방식으로 상호작용할 수 있다. 예를 들어, 사용자는 물리적 동작을 수행하는 데 관여되는 로봇 디바이스의 개개의 컴포넌트들을 선택하고 그 컴포넌트들의 장래의 궤적들, 불확실성 레벨들, 개개의 가상 안전 케이지들, 및, 하나 이상의 파라미터들(예컨대, 출력 레벨, 현재 속도 등)의 수치 디스플레이와 같은, 개개의 컴포넌트들과 연관된 다른 정보를 볼 수 있을 것이다. 하나 이상의 추정된 궤적들은 물론, 각각의 추정된 궤적에 대응하는 확률들이 또한 디스플레이될 수 있다. 게다가, 원격 컴퓨팅 디바이스의 사용자는 공간의 표시를 원격적으로 조절할 수 있을 것이다. 예를 들어, 원격 컴퓨팅 디바이스는 가상 안전 케이지의 크기를 증가 또는 감소시키기 위해 사용자가 조작할 수 있는 다이얼 또는 다른 조절가능 입력 디바이스를 포함할 수 있다. 다른 예들이 또한 가능하다.
일부 실시예에서, 로봇 디바이스가 물리적 동작의 적어도 일부분을 수행하는 동안 표시가 계속하여 제공될 수 있다. 예를 들어, 지시가 로봇 디바이스가 하나의 위치로부터 다른 위치로 움직이라는 것일 때, 로봇 디바이스가 하나의 위치로부터 다른 위치로 움직일 때 3D 가상 안전 케이지 경계가 계속하여 투사될 수 있다. 이러한 예에서, 가상 안전 케이지는, 로봇 디바이스와 함께, 시각적으로 하나의 위치로부터 다른 위치로 옮겨지는 것처럼 보이는 동안 그의 크기 및 형상을 유지할 수 있지만, 다른 예에서, 예를 들어, 로봇 디바이스가 로봇 디바이스에 접근하는 움직이는 물체를 갑자기 검출한 경우와 같이, 로봇 디바이스가 움직이는 동안, 가상 안전 케이지가 그의 크기 또는 형상을 변경할 수 있다. 다른 예들이 또한 가능하다.
예들 내에서, 그리고 이상의 논의에 따르면, 로봇 디바이스는, 하나 이상의 로봇 팔들과 같은, 물리적 동작을 수행하는 데 관여된 적어도 하나의 로봇 매니퓰레이터를 포함할 수 있다. 그에 따라, 방법(300)은 물리적 동작을 수행하는 데 관여된 적어도 하나의 로봇 매니퓰레이터에 대한 각자의 운동 범위들을 결정하는 동작들을 포함할 수 있다. 이와 같이, 가상 표현을 결정하는 것은 적어도 하나의 로봇 매니퓰레이터에 대한 결정된 각자의 운동 범위들에 적어도 부분적으로 기초할 수 있고, 표시는 결정된 각자의 운동 범위들의 시각적 표시를 포함할 수 있다.
예들 내에서, 가상 안전 케이지들이, 가능한 것들 중에서도 특히, 사람들, 차량들, 및 다른 로봇 디바이스들과 같은, 로봇 디바이스의 물리적 환경에서 검출되는 움직이는 물체들에 기초하여 결정되고 조절될 수 있다. 이러한 예들 내에서, 컴퓨팅 디바이스는 움직이는 물체를 식별하기 위해 환경에서의 하나 이상의 센서들을 사용할 수 있다. 예를 들어, 컴퓨팅 디바이스는 환경에서의 정적 장애물들을 환경에서의 동적 장애물들로부터 분리시키기 위해 정적 배경 차감(static background subtraction) 또는, 칼만 필터(Kalman filter)와 같은, 보다 확률적인 접근법을 이용할 수 있다.
움직이는 물체를 식별한 것에 응답하여, 컴퓨팅 디바이스는, 하나 이상의 센서들 및/또는 다른 디바이스(들)를 통해, 가능한 것들 중에서도 특히, 움직이는 물체의 현재 속도, 현재 가속도, 현재 움직임 방향, 및 물체의 질량과 같은, 움직이는 물체와 연관된 파라미터들을 결정할 수 있다. 컴퓨팅 디바이스는 이어서, 움직이는 물체의 결정된 파라미터들에 적어도 부분적으로 기초하여, 움직이는 물체가 미리 결정된 기간에 걸쳐 따라 주행할 것으로 추정되는 움직이는 물체의 추정된 궤적을 결정할 수 있다. 다른 추정된 궤적들도, 어쩌면 움직이는 물체와 연관된 미리 결정된 불확실성에 기초하여, 결정될 수 있다. 게다가, 이 시나리오에서 미리 결정된 기간은 파라미터들이 결정될 때 시작될 수 있거나, 다른 시점에서 시작될 수 있다. 또한 게다가, 움직이는 물체와 관련하여 본원에서 논의되는 미리 결정된 기간은 로봇 디바이스와 관련하여 앞서 논의된 미리 결정된 기간과 동일하거나 상이할 수 있다.
실제로, 본원에서 논의되는 미리 결정된 기간은 안전 중지 또는 다른 유형의 안전 조종(예컨대, 충돌 회피)을 실행하는 데 필요한 기간과 하나 이상의 프로세서들이 가상 안전 케이지들의 파라미터들(예컨대, 체적)을 계산하는 데 필요한 기간의 합을 지칭할 수 있다.
이 예들 내에서, 보다 즉각적인 대응 조치가 로봇 디바이스에 의해 취해질 것을 요구할 수 있는 안전 목적들을 위한 움직이는 물체들의 운동 예측(즉, "단거리 예측")이 사람 기반 안전 표준들(예컨대, 사람들이 최대 3 미터/초로 움직일 수 있는 것으로 가정함)과 연관된 균일한 운동 영역(motion bound)들에 따라 수행될 수 있다. 단거리 예측은 임의의 예측하지 못한 장애물들의 경우에 로봇 디바이스가 안전하게 정지할 수 있게 할 수 있고, 로봇 디바이스와 움직이는 물체 중 하나 이상의 보수적인 운동 추정들을 필요로 할 수 있다. 게다가, 덜 즉각적인 대응 조치가 로봇 디바이스에 의해 취해질 것을 요구할 수 있고 로봇 디바이스의 매끄러운 반응 동작을 용이하게 할 수 있는 운동 예측(즉, "장거리 예측")은, 고트래픽 구역들(즉, 시간의 경과에 따라 사람들 또는 다른 움직이는 물체들/장애물들이 빈번히 통과하여 지나가는 것으로 관측되고 따라서 영역들 간의 확률 분포에서 증가된 가중치를 부여받아야 하는, 통로와 같은, 특정 영역들)에 대한 학습된 선험들과 결합된 칼만 필터 또는 파티클 필터(particle filter)과 같은, 확률적 접근법들을 이용할 수 있다. 장거리 예측은 보다 즉각적인 안전 정지들의 필요성을 감소시킬 수 있는 회피 거동들을 가능하게 할 수 있고, 운동 추정들에 관해 보다 적은 확실성으로 동작할 수 있다. 일부 실시예에서, 컴퓨팅 디바이스는 단거리 예측와 장거리 예측 둘 다를 동시에 구현할 수 있다.
컴퓨팅 디바이스는 다양한 속도들, 질량들, 궤적들, 및/또는 과거의 움직이는 물체들의 다른 파라미터들에서 사람들 및 다른 움직이는 물체들의 미리 결정된 운동들의 로컬 또는 원격 데이터베이스에 액세스할 수 있고, 검출된 움직이는 물체의 장래의 궤적을 예측하기 위해 이 데이터베이스를 사용할 수 있다. 그에 따라, 컴퓨팅 디바이스는 검출된 움직이는 물체에 적어도 부분적으로 유사한 움직이는 물체들의 미리 결정된 파라미터들에 부분적으로 기초하여 적어도 하나의 추정된 궤적을 결정할 수 있다. 예를 들어, 컴퓨팅 디바이스는 다른 움직이는 물체들의 미리 결정된 운동들(또는 어쩌면 동일한 움직이는 물체의 미리 결정된 운동들)에 기초하여 움직이는 물체들의 장래의 운동들을 외삽할 수 있다.
다음에, 컴퓨팅 디바이스는 움직이는 물체의 추정된 궤적을 블록(304)에서 결정된 로봇 디바이스의 물리적 컴포넌트들의 하나 이상의 추정된 궤적들과 비교할 수 있다. 예를 들어, 컴퓨팅 디바이스는 움직이는 물체의 하나 이상의 추정된 궤적들이 로봇 디바이스의 물리적 컴포넌트들의 하나 이상의 추정된 궤적들과 교차하거나 다른 방식으로 방해하는지를 결정할 수 있고, 일부 실시예에서, 어쩌면 이 결정을 미리 결정된 기간 내에 일어날 수 있는 교차로 제한할 수 있다. 다른 예로서, 컴퓨팅 디바이스는 움직이는 물체가 미리 결정된 기간 내에 점유할 수 있는 공간의 하나 이상의 추정된 체적들을 결정하기 위해 움직이는 물체의 파라미터들 및 움직이는 물체의 하나 이상의 추정된 궤적들을 사용할 수 있고, 공간의 하나 이상의 추정된 체적들은 어쩌면 상대 확률들과 연관되어 있다. 컴퓨팅 디바이스는 이어서 움직이는 물체의 공간의 하나 이상의 추정된 체적들이 로봇 디바이스가 미리 결정된 기간 내에 점유할 수 있는 공간의 하나 이상의 체적들과 겹치는지를 결정할 수 있다. 또 다른 예로서, 컴퓨팅 디바이스가 움직이는 물체가 로봇 디바이스의 궤적들과 교차하지 않을 것이라고 결정할 때, 컴퓨팅 디바이스는, 로봇 디바이스의 가상 안전 케이지를 조절할 때, 여전히 로봇 디바이스 및 로봇 디바이스의 궤적들로부터 움직이는 물체의 궤적들까지의 거리를 로봇 디바이스의 궤적들과 비교할 수 있다. 다른 예들이 또한 가능하다.
비교의 출력에 기초하여, 컴퓨팅 디바이스는 이어서 로봇 디바이스에 의해 점유된 물리적 환경에서의 공간의 가상 표현을 조절할 수 있고, 조절된 가상 표현과 연관된 공간의 위치의 표시를, 물리적 환경 내에, 제공할 수 있다. 예를 들어, 컴퓨팅 디바이스가 움직이는 물체가 로봇 디바이스의 궤적으로부터 주어진 거리 내에 곧 들어올 것으로 결정하는 경우, 컴퓨팅 디바이스는 로봇 디바이스의 궤적 또는 로봇 디바이스의 운동에 대한 다른 제약조건들을 조절함으로써 가상 안전 케이지를 축소시킬 수 있다. 그에 따라, 표시는, 앞서 기술된 시각적 표시와 오디오 표시 중 하나 이상과 같은, 조절된 가상 표현에 의해 표현된 공간의 위치의 시각적 표시 및 오디오 표시 중 하나 이상을 포함할 수 있다. 게다가, 표시는 또한, 예컨대, 앞서 기술된 것과 유사한 방식으로, 움직이는 물체의 결정된 추정된 궤적을 표현하는 경로를 시각적으로 묘사할 수 있다.
게다가, 일부 예에서, 컴퓨팅 디바이스는 본원에 기술되는 동작들 중 하나 이상을 구현하는 것에 의해 움직이는 물체에 대한 가상 안전 케이지를 결정할 수 있다. 예를 들어, 움직이는 물체의 하나 이상의 추정된 궤적들에 기초하여 그리고 움직이는 물체의 파라미터들에 추가로 기초하여(그리고 어쩌면 이전의 움직이는 물체들과 연관된 데이터에 추가로 기초하여), 컴퓨팅 디바이스는 로봇 디바이스의 물리적 환경에서의 공간의 체적의 가상 표현을 결정할 수 있고, 공간의 체적은 움직이는 물체가 점유할 것으로 추정되는 공간을 포함한다.
앞서 살펴본 비교의 출력에 응답하여, 그리고 어쩌면 움직이는 물체에 관해 행해진 다른 결정들에 응답하여, 컴퓨팅 디바이스는 다른 동작들도 수행할 수 있다. 예를 들어, 컴퓨팅 디바이스는 로봇 디바이스에 로봇 디바이스와 움직이는 물체 사이의 충돌을 피하기 위해 그의 속도를 줄이라고, 정지하라고, 그리고/또는 그의 궤적을 변경하라고 지시할 수 있다. 게다가, 컴퓨팅 디바이스는, 가능한 것들 중에서도 특히, 경고 광을 투사하는 것 및/또는 경보 소리를 내는 것에 의해 임박한 충돌 또는 잠재적인 충돌을 로봇 디바이스 및 움직이는 물체의 주변 환경에 전달할 수 있다. 또한 게다가, 컴퓨팅 디바이스는, 로봇 디바이스가 충돌을 피하기 위해 또는 환경에서 다른 방식으로 안전하게 동작하기 위해 앞서 살펴본 조치들 중 하나 이상의 조치를 취할 수 있는, "안전 이동 모드"에서 동작하도록 로봇 디바이스를 설정할 수 있다.
예들 내에서, 로봇 디바이스의 환경에서 움직이는 물체를 식별한 후의 어떤 시점에서, 컴퓨팅 디바이스는, 로봇 디바이스의 물리적 환경에서의 하나 이상의 센서들을 통해, 움직이는 물체가 로봇 디바이스로부터 임계 거리 밖에 있다는 것을 식별할 수 있다. 예를 들어, 컴퓨팅 디바이스는 로봇 디바이스가 움직이는 물체와 충돌하거나 다른 방식으로 방해할 위험이 더 이상 없다고 결정할 수 있다. 움직이는 물체가 임계 거리 밖에 있다는 것을 식별한 것에 응답하여, 컴퓨팅 디바이스는 이어서 공간이 증가되도록 물리적 환경에서의 공간의 가상 표현을 확장시킬 수 있다. 컴퓨팅 디바이스는 이어서 확장된 가상 표현과 연관된 표시를 제공할 수 있고, 여기서 표시는 확장된 공간의 시각적 표시와 확장된 공간의 오디오 표시 중 하나 이상을 포함한다.
예들 내에서, 로봇 디바이스는 움직이는 물체들이 검출되지 않을 때 또는 움직이는 물체들이 물리적 동작을 수행하는 로봇 디바이스에 대해 임계 낮은 위험(threshold low risk)을 갖는 것으로 결정될 때(예컨대, 이러한 움직이는 물체들은 로봇 디바이스로부터 미리 결정된 거리만큼 떨어져 있음) 보다 높은 속도로 움직이라고 지시받을 수 있다. 게다가, 사람들 또는 다른 움직이는 물체들이 주어진 거리 내에서 검출되지 않을 때, 컴퓨팅 디바이스가 로봇 디바이스에 대해 유지하는 가상 안전 케이지가 시간의 경과에 따라 확장되고 성장될 수 있다. 이와 달리, 사람들 또는 다른 움직이는 물체들의 예측된 장래의 운동들이 로봇과 겹치기 시작할 때, 또는 사람들 또는 다른 움직이는 물체들이 일반적으로 로봇 디바이스에 접근할 때, 컴퓨팅 디바이스는 속도를 낮추라고 로봇 디바이스에 지시할 수 있고, 가상 안전 케이지를 점차적으로 축소시키기 시작할 수 있다. 일부 예에서, 사람 또는 다른 움직이는 물체가 미리 결정된 조정가능한 임계 거리 내에 있는 것으로 검출되는 경우, 로봇 디바이스는 그의 운동 전부를 중지할 수 있고, 가상 안전 케이지가 0으로 설정될 수 있다(즉, 사라짐). 다른 예들이 또한 가능하다.
실제로, 안전 보장과 로봇 디바이스의 시스템 성능 사이에 트레이드오프가 있을 수 있다는 것을 잘 알 것이다. 이와 같이, 궤적 결정 및 가상 안전 케이지 결정에 대한 접근법들이 필요할 때 절대 안전한 동작을 가능하게 하기 위해 결합될 수 있는 반면, 정상적인 상황들 하에서 로봇 디바이스의 궤적들에 대한 우아한 긴급하지 않은 조절들(예컨대, 로봇 디바이스의 경로 재지정)이 선호될 수 있다.
또한, 가상 표현을 동적으로 조절하고 동적으로 조절된 가상 표현에 대응하는 표시를 동적으로 업데이트하기 위해, 움직이는 물체들을 검출하고 모니터링하는 동작들이 연속적으로 또는 간헐적으로 수행될 수 있다는 것을 잘 알 것이다.
또한 게다가, 가상 표현을 동적으로 조절하고 동적으로 조절된 가상 표현에 대응하는 표시를 동적으로 업데이트하기 위해, 이 방법의 하나 이상의 동작들이 연속적으로 또는 간헐적으로 수행될 수 있다는 것을 잘 알 것이다. 예들 내에서, 예를 들어, 로봇 디바이스의 물리적 컴포넌트들이 임의의 주어진 시점에 가질 수 있는 운동 범위들이 연속적으로 또는 빈번히 계산되고 다른 사람들/디바이스들에 제공될 수 있다. 그리고 예들 내에서, 로봇 디바이스 및/또는 연관된 시스템은 가상 안전 케이지를 유지하기 위해 로봇 디바이스의 주변 환경을 연속적으로 또는 빈번히 모니터링할 수 있다. 다른 예들이 또한 가능하다.
도 4a 및 도 4b는 본원에 기술되는 적어도 일부 실시예에 따른, 수행되는 예시적인 방법의 예시적인 동작들을 나타내고 있다. 도 4a는 로봇 디바이스(400)가 제1 궤적(406A)을 따라 제1 위치(402)로부터 제2 위치(404A)로 움직이는 것을 나타내고 있는 반면, 도 4b는 로봇 디바이스가 보다 긴 제2 궤적(406B)을 따라 제1 위치로부터 상이한 제2 위치(404B)로 움직이는 것을 나타내고 있다. 그에 따라, 컴퓨팅 디바이스(도시되지 않음)는 제1 궤적(406A)에 기초하여 제1 가상 표현(408)을 결정할 수 있고, 또한 제2 궤적(406B)에 기초하여 제2 가상 표현(410)을 결정할 수 있다. 도시된 바와 같이, 제1 가상 표현(408)의 공간은 제2 가상 표현(410)의 공간보다 작은데, 그 이유는 로봇 디바이스(400)의 물리적 컴포넌트들(예컨대, 도시된 바와 같이, 관절, 강체 아암 세그먼트, 및 그리퍼)이 제2 궤적(406B)을 따라 움직이는 동안 보다 큰 공간을 점유할 수 있기 때문이다. 예들 내에서, 제1 및 제2 가상 표현들(408, 410)이 로봇 디바이스(400)의 환경에서 3D 홀로그램들로서 투사될 수 있거나, 사용자에게, 사용자의 컴퓨팅 디바이스에, 다른 로봇 디바이스들에, 기타에 다른 방식으로 표시될 수 있다. 게다가, 이 각자의 3D 홀로그램들이 집성(그 결과 이 경우에 단지 제2 가상 표현(410)의 홀로그램만이 얻어질 수 있는데, 그 이유는 제2 가상 표현이 제1 가상 표현(408)의 거의 전부를 포함하기 때문임), 중복, 중첩, 또는 다른 방식으로 하나로 통합될 수 있다.
추가의 예들 내에서, 컴퓨팅 디바이스는 제1 궤적(406A)을 보다 높은 확률의 궤적인 것으로 추정할 수 있는 반면, 컴퓨팅 디바이스는 제2 궤적(406B)을 보다 낮은 확률의 궤적인 것으로 추정할 수 있거나, 그 반대일 수 있다. 예를 들어, 어쩌면 이전에 로봇 디바이스로 하여금 로봇 디바이스가 움직이도록 지시받았던 곳을 넘어 움직이게 했을 수 있는 로봇 디바이스(400)의 하나 이상의 컴포넌트들에서 이전에 검출된 오류로 인해, 제1 궤적(406A)에 연관된 96% 확률이 있을 수 있고 제2 궤적(406B)에 연관된 4% 확률이 있을 수 있다. 다른 예들이 또한 가능하다.
다른 추가 예들 내에서, 컴퓨팅 디바이스는 로봇 팔의 관절들 중 하나 이상, 로봇 팔의 강체 아암 세그먼트들 중 하나 이상, 로봇 팔의 그리퍼, 및/또는 다른 물리적 컴포넌트들의 전체 또는 부분 운동 범위를 결정할 수 있다. 그에 따라, 제1 및 제2 가상 표현들에 의해 표현되는 제1 및 제2 공간들의 표시들은 그러면 그 운동 범위들의 시각적 표시들을 포함할 수 있다. 예를 들어, 제2 궤적(406B)은, 일부 시나리오에서, z-방향에서의 로봇 디바이스의 운동 범위의 정도일 수 있다(즉, 로봇 디바이스는 z-방향에서 제1 위치(402)와 위치(404B) 사이에서만 움직이도록 설계될 수 있다).
도 5a 및 도 5b는 본원에 기술되는 적어도 일부 실시예에 따른, 수행되는 예시적인 방법의 예시적인 동작들을 나타내고 있다. 도 5a는 등위면 쉘(isosurface shell)과 비슷한, 복합 체적 가상 안전 케이지 경계(502A)를 갖는 로봇 디바이스(500)를 나타내고 있다. 가상 안전 케이지(502A)는, 예를 들어, 앞서 기술된 방법(300)에 따라, 미리 결정된 기간 내에 로봇 디바이스(500)에 의한 모든 장래의 움직임들 및 운동 범위들의 경계를 표시할 수 있다. 가상 안전 케이지(502A)는, 가능한 것들 중에서도 특히, 환경에서 사람에게 보일 수 있거나(예컨대, 홀로그램으로서 투사됨), 그 대신에 원격 컴퓨팅 디바이스 상에 디스플레이하기 위해 제공되는 3D 모델로서만 보일 수 있다. 게다가, 로봇 디바이스(500)에 결합된 프로젝터(504)는 로봇 디바이스의 적어도 하나의 물리적 컴포넌트가 미리 결정된 기간 내에 점유할 수 있는 곳의 아래쪽에 있는 바닥 상의 영역을 조사하는 광(506A)을, 로봇 디바이스의 환경에서의 바닥으로, 투사할 수 있다.
도 5b는 조절된 복합 체적 가상 안전 케이지 경계(502B)를 나타내고 있다. 가상 안전 케이지(502B)가 도 5a의 가상 안전 케이지(502A)와 비교하여 확장될 수 있고, 로봇 디바이스가 물리적 물체(508)를 파지하고 있는 동안 미리 결정된 기간 내에 로봇 디바이스(500)에 의한 모든 장래의 움직임들 및 운동 범위들의 경계를 표시할 수 있다. 이러한 케이지(502A)는 또한 물리적 물체(508)의 크기 및 치수, 그리고 물리적 물체(508)가 로봇 디바이스에 의해 움직여질 때 점유할 영역을 고려할 수 있다. 이 경우에, 프로젝터(504)는 로봇 디바이스의 적어도 하나의 물리적 컴포넌트가 물리적 물체(508)를 핸들링하고 있는 동안 미리 결정된 기간 내에 점유할 수 있는 곳의 아래쪽에 있는 바닥 상의 영역을 조사하는 상이한 광(506B)을, 로봇 디바이스의 환경에서의 바닥으로, 투사할 수 있다. 상이한 광(506B)은 상이한 색상을 가질 수 있거나, 반복하여 번쩍이도록 투사될 수 있거나, 다른 광(506A)이 제공되었던 방식과 상이한 다른 방식으로 제공될 수 있다.
도 6은 본원에 기술되는 적어도 일부 실시예에 따른, 수행되는 예시적인 방법의 예시적인 동작들을 나타내고 있다. 이 예에서, 컴퓨팅 디바이스(도시되지 않음)는, 다가오는 미리 결정된 기간(예컨대, 1초) 내에, 로봇 디바이스의 로봇 팔(600)이 움직이는 차량(606)의 다른 궤적(604)과 교차할 궤적(602)을 따라 움직일 수 있다고 결정할 수 있다. 이 결정을 할 때 또는 그 이전에, 로봇 팔(600)의 가상 안전 케이지(608)의 하나 이상의 차원들이, 도시된 바와 같이, 타원면 방식으로 경계를 이루고 있을 수 있다. 그렇지만, 이 결정을 할 때, 컴퓨팅 디바이스는 로봇 팔(600)의 궤적을 조절할 수 있고, 여기서 조절된 궤적(610)은 로봇 팔(600)이 움직이는 차량(606)의 궤적(604)과 교차하지 않는 위치에서 긴급 정지를 하도록 되어 있다. 컴퓨팅 디바이스는 또한 가상 안전 케이지를 그에 따라 조절할 수 있고, 여기서 조절된 가상 안전 케이지(612)는, 도시된 바와 같이, 하나 이상의 차원들에서 구면적으로 경계를 이루고 있다. 게다가, 일부 시나리오에서, 컴퓨팅 디바이스는 또한 움직이는 차량(606)에 대한 가상 안전 케이지(614)를 결정할 수 있고, 조절된 가상 안전 케이지가 움직이는 차량의 가상 안전 케이지와 교차하지 않도록 조절된 가상 안전 케이지(612)를 결정할 수 있다.
본원에 기술되는 배열들이 예를 위한 것에 불과하다는 것을 잘 알 것이다. 그에 따라, 본 기술분야의 통상의 기술자라면 다른 배열들 및 다른 요소들(예컨대, 머신들, 인터페이스들, 동작들, 순서들, 및 동작들의 그룹들 등)이 그 대신에 사용될 수 있고, 일부 요소들이 원하는 결과들에 따라 완전히 생략될 수 있다는 것을 잘 알 것이다. 게다가, 기술되어 있는 요소들 중 다수는 개별 또는 분산 컴포넌트들로서 또는 다른 컴포넌트들과 함께, 임의의 적당한 조합 및 위치에 구현될 수 있는 기능 엔티티들이거나, 독립적인 구조들로서 기술된 다른 구조적 요소들이 결합될 수 있다.
다양한 양태들 및 실시예들이 본원에 개시되어 있지만, 다른 양태들 및 실시예들이 본 기술분야의 통상의 기술자에게는 명백할 것이다. 본원에 개시되어 있는 다양한 양태들 및 실시예들은 예시를 위한 것이고 제한하는 것으로 의도되어 있지 않으며, 진정한 범주는, 하기의 청구항들의 자격을 가지는 등가물들의 전체 범주와 함께, 하기의 청구항들에 의해 나타내어진다. 또한 본원에서 사용된 용어가 특정의 실시예들을 설명하기 위한 것에 불과하고 제한하는 것으로 의도되어 있지 않다는 것을 잘 알 것이다.

Claims (20)

  1. 컴퓨팅 시스템에 의해 수행되는 방법으로서,
    상기 컴퓨팅 시스템의 하나 이상의 프로세서에 의해, 로봇 디바이스가 상기 로봇 디바이스의 컴포넌트를 수반하는 물리적 동작을, 한 환경에서(in an environment), 수행할 것을 요청하는 지시를 수신하는 단계;
    상기 지시를 수신한 것에 응답하여, 상기 하나 이상의 프로세서가 상기 로봇 디바이스의 상기 컴포넌트의 복수의 추정된 궤적들을 결정하는 단계 - 상기 복수의 추정된 궤적들은 상기 로봇 디바이스가 상기 물리적 동작을 수행할 때 상기 컴포넌트가 상기 환경에서 따라 움직일 것으로 추정되는 복수의 궤적들임 -;
    상기 하나 이상의 프로세서가 각자의 신뢰 점수들을 상기 복수의 추정된 궤적들을 따라 움직이는 상기 로봇 디바이스에 연관시키는 단계;
    상기 하나 이상의 프로세서가 상기 복수의 추정된 궤적들 중에서 미리 결정된 임계치를 초과하는 신뢰 점수들을 갖는 한 세트의 추정된 궤적들을 선택하는 단계;
    상기 선택된 세트의 추정된 궤적들에 기초하여, 상기 하나 이상의 프로세서가 상기 로봇 디바이스가 상기 물리적 동작을 수행하는 동안 상기 환경에서 점유할 것으로 추정되는 공간을 표현하는 가상 안전 케이지(virtual safety cage)를 결정하는 단계; 및
    상기 하나 이상의 프로세서가 상기 가상 안전 케이지의 위치의 표시를 상기 환경내에 제공하는 단계
    를 포함하는, 방법.
  2. 제1항에 있어서,
    상기 표시는 상기 선택된 세트의 추정된 궤적들에 연관된 상기 각자의 신뢰 점수들 및 상기 선택된 세트의 추정된 궤적들을 시각적으로 묘사하는, 방법.
  3. 제1항에 있어서,
    상기 표시를 제공하는 단계는 상기 컴퓨팅 시스템에 통신가능하게 링크된 투사 디바이스가 상기 가상 안전 케이지의 2차원(2D) 영상을 상기 환경내에 투사하게 하는 단계를 포함하고, 상기 2D 영상은 상기 선택된 세트의 추정된 궤적들을 표현하는 복수의 2D 경로들을 묘사하는, 방법.
  4. 제1항에 있어서,
    상기 표시를 제공하는 단계는 상기 컴퓨팅 시스템에 통신가능하게 링크된 투사 디바이스가 상기 가상 안전 케이지의 3차원(3D) 표시를 상기 환경내에 투사하게 하는 단계를 포함하고, 상기 3D 표시는 상기 선택된 세트의 추정된 궤적들을 표현하는 복수의 3D 경로들을 묘사하는, 방법.
  5. 제1항에 있어서,
    상기 표시를 제공하는 단계는, 상기 표시를 상기 로봇 디바이스로부터 원격지에 위치된 적어도 하나의 컴퓨팅 디바이스에 제공하는 단계를 포함하는, 방법.
  6. 제1항에 있어서,
    상기 로봇 디바이스가 상기 컴포넌트를 수반하는 상기 물리적 동작을 수행할 것을 요청하는 상기 지시는 상기 로봇 디바이스가 물체를 움직이도록 상기 컴포넌트를 사용할 것을 요청하는 지시를 포함하고,
    상기 가상 안전 케이지는 상기 물체가 상기 로봇 디바이스가 상기 물체를 움직이는 동안 점유할 것으로 추정되는 공간을 더 표현하는, 방법.
  7. 제1항에 있어서,
    상기 하나 이상의 프로세서가 상기 환경에서 검출된 움직이는 물체를 표현하는 데이터를, 상기 컴퓨팅 시스템의 하나 이상의 센서들로부터, 수신하는 단계; 및
    상기 데이터에 기초하여, 상기 하나 이상의 프로세서가 상기 움직이는 물체가 상기 가상 안전 케이지의 임계치 거리 내에 있다는 결정을 내리는 단계
    를 더 포함하고,
    상기 표시를 제공하는 단계는, 상기 움직이는 물체가 상기 가상 안전 케이지의 상기 임계치 거리 내에 있다는 상기 결정에 응답하여, 상기 환경 내의 스피커로 하여금 사운드를 재생하게 하는 단계를 포함하고, 상기 스피커는 상기 컴퓨팅 시스템에 통신가능하게 링크되는, 방법.
  8. 컴퓨팅 시스템에 의하여 수행되는 방법으로서,
    로봇 디바이스가 상기 로봇 디바이스의 컴포넌트를 수반하는 물리적 동작을, 한 환경에서, 수행할 것을 요청하는 지시를, 상기 컴퓨팅 시스템의 하나 이상의 프로세서에 의해, 수신하는 단계;
    상기 지시에 기초하여, 상기 하나 이상의 프로세서가 상기 컴포넌트의 추정된 궤적을 결정하는 단계 - 상기 추정된 궤적은 상기 로봇 디바이스가 상기 물리적 동작을 수행할 때 상기 컴포넌트가 상기 환경에서 따라 움직일 것으로 추정되는 궤적임 -;
    상기 컴포넌트의 상기 추정된 궤적에 기초하여, 상기 하나 이상의 프로세서가 상기 로봇 디바이스가 상기 물리적 동작을 수행하는 동안 상기 환경에서 점유할 것으로 추정되는 공간을 표현하는 가상 안전 케이지를 결정하는 단계;
    상기 하나 이상의 프로세서가 상기 컴퓨팅 시스템에 통신가능하게 링크된 투사 디바이스로 하여금 상기 가상 안전 케이지의 경계의 위치의 제1 표시를 상기 환경내에 투사하게 하는 단계;
    상기 하나 이상의 프로세서가 물리적 환경에서의 움직이는 물체를 식별하는 단계;
    상기 물리적 환경에서의 상기 움직이는 물체를 식별한 것에 응답하여, 상기 움직이는 물체가 따라 주행할 것으로 추정되는 상기 움직이는 물체의 추정된 궤적을 결정하는 단계;
    상기 움직이는 물체의 상기 추정된 궤적과 상기 컴포넌트의 상기 추정된 궤적 간의 비교를 행하는 단계;
    상기 비교의 출력에 기초하여, 상기 하나 이상의 프로세서가 상기 컴포넌트의 상기 추정된 궤적을 조절하는 단계;
    상기 컴포넌트의 상기 조절된 추정된 궤적에 기초하여, 상기 하나 이상의 프로세서가 상기 가상 안전 케이지를 조절하는 단계; 및
    상기 하나 이상의 프로세서가 상기 투사 디바이스로 하여금 상기 조절된 가상 안전 케이지의 경계의 위치의 제2 표시를, 상기 환경내에 투사하게 하는 단계
    를 포함하는 방법.
  9. 제8항에 있어서,
    상기 추정된 궤적은 상기 컴포넌트의 최대 토크, 상기 컴포넌트의 최대 파워 출력(power output), 및 상기 컴포넌트의 운동량 중 하나 이상을 포함하는 상기 컴포넌트의 파라미터에 기초하는, 방법.
  10. 삭제
  11. 제8항에 있어서,
    상기 물리적 환경에서의 상기 움직이는 물체를 식별하는 단계는 상기 환경에서 검출된 상기 움직이는 물체를 표현하는 데이터를, 상기 컴퓨팅 시스템에 통신가능하게 링크된 하나 이상의 센서로부터 수신하는 단계를 포함하고,
    상기 움직이는 물체가 따라 주행할 것으로 추정되는 상기 움직이는 물체의 상기 추정된 궤적을 결정하는 단계는
    상기 데이터에 기초하여, 상기 움직이는 물체의 현재 속도 및 상기 움직이는 물체의 현재 방향을 추정하는 단계; 및
    상기 현재 속도 및 상기 현재 방향에 기초하여, 상기 움직이는 물체가 따라 주행할 것으로 추정되는 상기 움직이는 물체의 상기 추정된 궤적을 결정하는 단계
    를 포함하는, 방법.
  12. 제8항에 있어서,
    상기 움직이는 물체는 사람을 포함하는, 방법.
  13. 제8항에 있어서,
    상기 제2 표시는 상기 조절된 가상 안전 케이지의 2차원(2D) 영상을 포함하고, 상기 2D 영상은 상기 조절된 추정된 궤적을 표현하는 2D 경로를 묘사하는, 방법.
  14. 제8항에 있어서,
    상기 제2 표시는 상기 조절된 가상 안전 케이지의 3차원(3D) 표시를 포함하고, 상기 3D 표시는 상기 조절된 추정된 궤적을 표현하는 3D 경로를 묘사하는, 방법.
  15. 제8항에 있어서,
    상기 하나 이상의 프로세서가 상기 가상 안전 케이지의 상기 경계의 상기 위치의 상기 제1 표시를 상기 로봇 디바이스로부터 원격지에 위치된 적어도 하나의 컴퓨팅 디바이스에 제공하는 단계를 더 포함하는, 방법.
  16. 시스템으로서,
    로봇 디바이스;
    하나 이상의 광학 디바이스들;
    무선 통신 인터페이스;
    적어도 하나의 프로세서; 및
    상기 시스템으로 하여금 동작들을 수행하게 하기 위해 상기 적어도 하나의 프로세서에 의해 실행가능한 명령어들을 포함하는 데이터 저장소를 포함하고, 상기 동작들은
    상기 로봇 디바이스가 상기 로봇 디바이스의 컴포넌트를 수반하는 물리적 동작을, 한 환경에서, 수행할 것을 요청하는 지시를 수신하는 것;
    상기 지시를 수신한 것에 응답하여, 상기 로봇 디바이스의 상기 컴포넌트의 복수의 추정된 궤적들을 결정하는 것 - 상기 복수의 추정된 궤적들은 상기 로봇 디바이스가 상기 물리적 동작을 수행할 때 상기 컴포넌트가 상기 환경에서 따라 움직일 것으로 추정되는 복수의 궤적들임 -;
    각자의 신뢰 점수들을 상기 복수의 추정된 궤적들을 따라 움직이는 상기 로봇 디바이스에 연관시키는 것;
    상기 복수의 추정된 궤적들 중에서 미리 결정된 임계치를 초과하는 신뢰 점수들을 갖는 한 세트의 추정된 궤적들을 선택하는 것;
    상기 선택된 세트의 추정된 궤적들에 기초하여, 상기 로봇 디바이스가 상기 물리적 동작을 수행하는 동안 상기 환경에서 점유할 것으로 추정되는 공간을 표현하는 가상 안전 케이지를 결정하는 것; 및
    상기 가상 안전 케이지의 위치의 표시를, 상기 하나 이상의 광학 디바이스들과 하나 이상의 상기 무선 통신 인터페이스에 의해, 상기 환경내에 제공하는 것
    을 포함하는, 시스템.
  17. 제16항에 있어서,
    상기 로봇 디바이스는 상기 물리적 동작을 수행하는 데 관여된 적어도 하나의 로봇 매니퓰레이터(robotic manipulator)를 포함하고, 상기 동작들은
    상기 적어도 하나의 로봇 매니퓰레이터에 대한 각자의 운동 범위들을 결정하는 것을 더 포함하고,
    상기 가상 안전 케이지를 결정하는 것은 상기 적어도 하나의 로봇 매니퓰레이터에 대한 상기 각자의 운동 범위들에 추가로 기초하며,
    상기 표시는 상기 적어도 하나의 로봇 매니퓰레이터에 대한 상기 각자의 운동 범위들을 시각적으로 묘사하는, 시스템.
  18. 제16항에 있어서,
    상기 로봇 디바이스로부터 원격지에 위치된 적어도 하나의 컴퓨팅 디바이스를 더 포함하고,
    상기 표시를 제공하는 것은, 상기 무선 통신 인터페이스에 의해, 상기 표시를 상기 적어도 하나의 컴퓨팅 디바이스에 제공하는 것을 포함하는, 시스템.
  19. 제16항에 있어서,
    상기 표시를 제공하는 것은, 상기 하나 이상의 광학 디바이스들에 의해, 상기 가상 안전 케이지의 3차원(3D) 표시를 제공하는 것을 포함하고,
    상기 3D 표시는 상기 선택된 세트의 추정된 궤적들을 표현하는 복수의 3D 경로들을 묘사하는, 시스템.
  20. 제16항에 있어서,
    상기 로봇 디바이스가 상기 컴포넌트를 수반하는 상기 물리적 동작을 수행할 것을 요청하는 상기 지시는 상기 로봇 디바이스가 물체를 움직이도록 상기 컴포넌트를 사용할 것을 요청하는 지시를 포함하고,
    상기 가상 안전 케이지는 상기 물체가 상기 로봇 디바이스가 상기 물체를 움직이는 동안 점유할 것으로 추정되는 공간을 더 표현하는, 시스템.
KR1020177032216A 2014-07-16 2015-05-12 로봇 디바이스에 대한 가상 안전 케이지 KR101859351B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/333,173 2014-07-16
US14/333,173 US9283678B2 (en) 2014-07-16 2014-07-16 Virtual safety cages for robotic devices
PCT/US2015/030265 WO2016010614A1 (en) 2014-07-16 2015-05-12 Virtual safety cages for robotic devices

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020177001172A Division KR101797901B1 (ko) 2014-07-16 2015-05-12 로봇 디바이스에 대한 가상 안전 케이지

Publications (2)

Publication Number Publication Date
KR20170126511A KR20170126511A (ko) 2017-11-17
KR101859351B1 true KR101859351B1 (ko) 2018-05-18

Family

ID=53276274

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020177001172A KR101797901B1 (ko) 2014-07-16 2015-05-12 로봇 디바이스에 대한 가상 안전 케이지
KR1020177032215A KR101859350B1 (ko) 2014-07-16 2015-05-12 로봇 디바이스에 대한 가상 안전 케이지
KR1020177032216A KR101859351B1 (ko) 2014-07-16 2015-05-12 로봇 디바이스에 대한 가상 안전 케이지

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020177001172A KR101797901B1 (ko) 2014-07-16 2015-05-12 로봇 디바이스에 대한 가상 안전 케이지
KR1020177032215A KR101859350B1 (ko) 2014-07-16 2015-05-12 로봇 디바이스에 대한 가상 안전 케이지

Country Status (6)

Country Link
US (3) US9283678B2 (ko)
EP (1) EP3169487B1 (ko)
JP (2) JP6392972B2 (ko)
KR (3) KR101797901B1 (ko)
CN (1) CN106660208B (ko)
WO (1) WO2016010614A1 (ko)

Families Citing this family (114)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9643316B2 (en) 2009-10-27 2017-05-09 Battelle Memorial Institute Semi-autonomous multi-use robot system and method of operation
US9283678B2 (en) * 2014-07-16 2016-03-15 Google Inc. Virtual safety cages for robotic devices
US9902061B1 (en) * 2014-08-25 2018-02-27 X Development Llc Robot to human feedback
US9661477B1 (en) * 2015-03-06 2017-05-23 AI Incorporated Collaborative robotic device work group
US10601658B2 (en) * 2015-04-08 2020-03-24 Cisco Technology, Inc. Maintenance of consumable physical components of a network
GB201509341D0 (en) * 2015-05-29 2015-07-15 Cambridge Medical Robotics Ltd Characterising robot environments
DE102015009048B3 (de) * 2015-07-13 2016-08-18 Kuka Roboter Gmbh Steuern eines nachgiebig geregelten Roboters
US9886035B1 (en) 2015-08-17 2018-02-06 X Development Llc Ground plane detection to verify depth sensor status for robot navigation
US10124491B2 (en) * 2015-08-31 2018-11-13 Avaya Inc. Operational parameters
US10350757B2 (en) 2015-08-31 2019-07-16 Avaya Inc. Service robot assessment and operation
US10040201B2 (en) 2015-08-31 2018-08-07 Avaya Inc. Service robot communication systems and system self-configuration
US10032137B2 (en) 2015-08-31 2018-07-24 Avaya Inc. Communication systems for multi-source robot control
US9878664B2 (en) 2015-11-04 2018-01-30 Zoox, Inc. Method for robotic vehicle communication with an external environment via acoustic beam forming
US10334050B2 (en) 2015-11-04 2019-06-25 Zoox, Inc. Software application and logic to modify configuration of an autonomous vehicle
US9494940B1 (en) 2015-11-04 2016-11-15 Zoox, Inc. Quadrant configuration of robotic vehicles
US9720415B2 (en) 2015-11-04 2017-08-01 Zoox, Inc. Sensor-based object-detection optimization for autonomous vehicles
US9507346B1 (en) 2015-11-04 2016-11-29 Zoox, Inc. Teleoperation system and method for trajectory modification of autonomous vehicles
US9804599B2 (en) 2015-11-04 2017-10-31 Zoox, Inc. Active lighting control for communicating a state of an autonomous vehicle to entities in a surrounding environment
WO2017079341A2 (en) 2015-11-04 2017-05-11 Zoox, Inc. Automated extraction of semantic information to enhance incremental mapping modifications for robotic vehicles
US9916703B2 (en) 2015-11-04 2018-03-13 Zoox, Inc. Calibration for autonomous vehicle operation
US10401852B2 (en) 2015-11-04 2019-09-03 Zoox, Inc. Teleoperation system and method for trajectory modification of autonomous vehicles
US10745003B2 (en) 2015-11-04 2020-08-18 Zoox, Inc. Resilient safety system for a robotic vehicle
US9734455B2 (en) 2015-11-04 2017-08-15 Zoox, Inc. Automated extraction of semantic information to enhance incremental mapping modifications for robotic vehicles
US9754490B2 (en) 2015-11-04 2017-09-05 Zoox, Inc. Software application to request and control an autonomous vehicle service
US9517767B1 (en) 2015-11-04 2016-12-13 Zoox, Inc. Internal safety systems for robotic vehicles
US9802661B1 (en) 2015-11-04 2017-10-31 Zoox, Inc. Quadrant configuration of robotic vehicles
US10248119B2 (en) 2015-11-04 2019-04-02 Zoox, Inc. Interactive autonomous vehicle command controller
US9958864B2 (en) 2015-11-04 2018-05-01 Zoox, Inc. Coordination of dispatching and maintaining fleet of autonomous vehicles
US11283877B2 (en) 2015-11-04 2022-03-22 Zoox, Inc. Software application and logic to modify configuration of an autonomous vehicle
US9612123B1 (en) 2015-11-04 2017-04-04 Zoox, Inc. Adaptive mapping to navigate autonomous vehicles responsive to physical environment changes
US9910441B2 (en) 2015-11-04 2018-03-06 Zoox, Inc. Adaptive autonomous vehicle planner logic
US10000124B2 (en) 2015-11-04 2018-06-19 Zoox, Inc. Independent steering, power, torque control and transfer in vehicles
US10496766B2 (en) 2015-11-05 2019-12-03 Zoox, Inc. Simulation system and methods for autonomous vehicles
US9632502B1 (en) 2015-11-04 2017-04-25 Zoox, Inc. Machine-learning systems and techniques to optimize teleoperation and/or planner decisions
US9606539B1 (en) * 2015-11-04 2017-03-28 Zoox, Inc. Autonomous vehicle fleet service and system
DE102015225844A1 (de) * 2015-12-18 2017-06-22 Robert Bosch Gmbh Verfahren und Vorrichtung zum Betreiben einer Datenbrille sowie Datenbrille
JP6744747B2 (ja) * 2016-04-01 2020-08-19 キヤノン株式会社 情報処理装置およびその制御方法
EP3243609A1 (en) * 2016-05-09 2017-11-15 OpiFlex Automation AB A fenceless industrial robot system
US9868214B2 (en) * 2016-06-20 2018-01-16 X Development Llc Localization of a mobile system
JP6693291B2 (ja) * 2016-06-20 2020-05-13 トヨタ自動車株式会社 移動ロボットの移動経路計画方法
US10956739B2 (en) * 2016-06-27 2021-03-23 Autodesk, Inc. Augmented reality robotic system visualization
JP2018008347A (ja) * 2016-07-13 2018-01-18 東芝機械株式会社 ロボットシステムおよび動作領域表示方法
EP3287243A1 (en) * 2016-08-24 2018-02-28 Siemens Aktiengesellschaft Method for collision detection and autonomous system
EP3287861A1 (en) * 2016-08-24 2018-02-28 Siemens Aktiengesellschaft Method for testing an autonomous system
US9829333B1 (en) * 2016-09-13 2017-11-28 Amazon Technologies, Inc. Robotic traffic density based guidance
CN106406312B (zh) * 2016-10-14 2017-12-26 平安科技(深圳)有限公司 导览机器人及其移动区域标定方法
WO2018091064A1 (en) * 2016-11-15 2018-05-24 Abb Schweiz Ag An industrial robot system comprising a plurality of robots and a plurality of safety sensors
JP6420296B2 (ja) * 2016-12-01 2018-11-07 ファナック株式会社 ロボットの干渉領域を自動で設定するロボット制御装置
US20230191635A1 (en) * 2017-01-13 2023-06-22 Clara Vu Dynamic, interactive signaling of safety-related conditions in a monitored environment
US11518051B2 (en) 2017-02-07 2022-12-06 Veo Robotics, Inc. Dynamic, interactive signaling of safety-related conditions in a monitored environment
US11820025B2 (en) 2017-02-07 2023-11-21 Veo Robotics, Inc. Safe motion planning for machinery operation
US10099372B2 (en) 2017-02-07 2018-10-16 Veo Robotics, Inc. Detecting and classifying workspace regions for safety monitoring
US11541543B2 (en) 2017-02-07 2023-01-03 Veo Robotics, Inc. Dynamic, interactive signaling of safety-related conditions in a monitored environment
JP6866673B2 (ja) * 2017-02-15 2021-04-28 オムロン株式会社 監視システム、監視装置、および監視方法
US10338594B2 (en) * 2017-03-13 2019-07-02 Nio Usa, Inc. Navigation of autonomous vehicles to enhance safety under one or more fault conditions
US10766140B2 (en) 2017-04-13 2020-09-08 Battelle Memorial Institute Teach mode collision avoidance system and method for industrial robotic manipulators
JP6828579B2 (ja) * 2017-04-27 2021-02-10 トヨタ自動車株式会社 環境整備ロボットおよびその制御プログラム
US10423162B2 (en) 2017-05-08 2019-09-24 Nio Usa, Inc. Autonomous vehicle logic to identify permissioned parking relative to multiple classes of restricted parking
DE102017111886B3 (de) * 2017-05-31 2018-05-03 Sick Ag Bestimmen der Bewegung einer abzusichernden Maschine
JP6538760B2 (ja) * 2017-06-22 2019-07-03 ファナック株式会社 複合現実シミュレーション装置及び複合現実シミュレーションプログラム
US10710633B2 (en) 2017-07-14 2020-07-14 Nio Usa, Inc. Control of complex parking maneuvers and autonomous fuel replenishment of driverless vehicles
US10369974B2 (en) 2017-07-14 2019-08-06 Nio Usa, Inc. Control and coordination of driverless fuel replenishment for autonomous vehicles
US11065761B2 (en) * 2017-07-25 2021-07-20 Dematic Corp. Robotic picking training technique
JP6633580B2 (ja) * 2017-08-02 2020-01-22 ファナック株式会社 ロボットシステム及びロボット制御装置
JP6687573B2 (ja) * 2017-09-07 2020-04-22 ファナック株式会社 ロボットシステム
US10384346B2 (en) * 2017-09-08 2019-08-20 Niantic, Inc. Collision detection, estimation, and avoidance
JP6606145B2 (ja) 2017-09-25 2019-11-13 ファナック株式会社 ロボットシステム
WO2019080996A1 (en) * 2017-10-24 2019-05-02 Abb Schweiz Ag METHOD FOR MONITORING WORK AREA, ROBOT SYSTEM, AND CONTROL SYSTEM
TWI672207B (zh) * 2017-11-03 2019-09-21 財團法人工業技術研究院 機械設備之定位系統及其方法
EP3726328A4 (en) * 2017-12-12 2021-01-13 Sony Corporation DEVICE AND PROCESS FOR PROCESSING INFORMATION
US11453123B2 (en) * 2017-12-27 2022-09-27 Stmicroelectronics, Inc. Robotic device with time-of-flight proximity sensing system
US10676022B2 (en) 2017-12-27 2020-06-09 X Development Llc Visually indicating vehicle caution regions
KR102499576B1 (ko) 2018-01-08 2023-02-15 삼성전자주식회사 전자 장치 및 그 제어 방법
WO2019139815A1 (en) 2018-01-12 2019-07-18 Duke University Apparatus, method and article to facilitate motion planning of an autonomous vehicle in an environment having dynamic objects
US11022971B2 (en) 2018-01-16 2021-06-01 Nio Usa, Inc. Event data recordation to identify and resolve anomalies associated with control of driverless vehicles
JP7035555B2 (ja) * 2018-01-23 2022-03-15 セイコーエプソン株式会社 教示装置、及びシステム
TWI822729B (zh) * 2018-02-06 2023-11-21 美商即時機器人股份有限公司 用於儲存一離散環境於一或多個處理器之一機器人之運動規劃及其改良操作之方法及設備
US20210205995A1 (en) * 2018-02-06 2021-07-08 Clara Vu Robot end-effector sensing and identification
US20220088787A1 (en) * 2018-02-06 2022-03-24 Clara Vu Workplace monitoring and semantic entity identification for safe machine operation
EP3769174B1 (en) 2018-03-21 2022-07-06 Realtime Robotics, Inc. Motion planning of a robot for various environments and tasks and improved operation of same
JP7126364B2 (ja) * 2018-03-23 2022-08-26 株式会社トヨタプロダクションエンジニアリング 判定装置、判定方法、及び判定プログラム
EP3546136B1 (de) * 2018-03-29 2021-01-13 Sick Ag Augmented-reality-system
JP6737827B2 (ja) * 2018-03-29 2020-08-12 ファナック株式会社 協働ロボットの制御装置及び制御方法
US11850755B2 (en) 2018-06-26 2023-12-26 Fanuc America Corporation Visualization and modification of operational bounding zones using augmented reality
US10325485B1 (en) * 2018-09-11 2019-06-18 Rockwell Automation Technologies, Inc. System or process to detect, discriminate, aggregate, track, and rank safety related information in a collaborative workspace
WO2020056295A2 (en) 2018-09-13 2020-03-19 The Charles Stark Draper Laboratory, Inc. Controlling robot torque and velocity based on context
JP6992719B2 (ja) * 2018-09-27 2022-01-13 オムロン株式会社 制御装置
JP6787966B2 (ja) 2018-10-02 2020-11-18 ファナック株式会社 拡張現実と複合現実を用いたロボット制御装置及び表示装置
EP3639983A1 (en) * 2018-10-18 2020-04-22 Technische Universität München Anti-collision safety measures for a reconfigurable modular robot
JP7028151B2 (ja) 2018-12-14 2022-03-02 トヨタ自動車株式会社 軌道生成装置
DE102018133472B3 (de) * 2018-12-21 2020-03-12 Franka Emika Gmbh Bewegungsüberwachung eines Robotermanipulators
JP7143776B2 (ja) * 2019-01-31 2022-09-29 オムロン株式会社 制御システム、及び、制御システムの制御方法
US11203120B1 (en) * 2019-02-06 2021-12-21 Intrinsic Innovation Llc Mobile robotics frame system
US10940796B2 (en) * 2019-04-05 2021-03-09 Ford Global Technologies, Llc Intent communication for automated guided vehicles
WO2020214723A1 (en) 2019-04-17 2020-10-22 Real Time Robotics, Inc. Motion planning graph generation user interface, systems, methods and articles
EP3959045A1 (en) * 2019-05-31 2022-03-02 Siemens Aktiengesellschaft Method for dynamic multi-dimensional spatio-temporal human machine interaction and feedback
US10618172B1 (en) * 2019-05-31 2020-04-14 Mujin, Inc. Robotic system with error detection and dynamic packing mechanism
US11407117B1 (en) * 2019-08-20 2022-08-09 X Development Llc Robot centered augmented reality system
US11364632B2 (en) * 2019-09-03 2022-06-21 Toyota Motor North America, Inc. Systems and methods for transporting an object into and out of a vehicle
JP7282016B2 (ja) * 2019-11-11 2023-05-26 株式会社日立製作所 ロボットシステム
CN111300491A (zh) * 2019-11-20 2020-06-19 深圳市烨嘉为技术有限公司 基于协作化驱控一体机器人的人机协作安全系统
US11037328B1 (en) * 2019-12-31 2021-06-15 Lyft, Inc. Overhead view image generation
JP7322722B2 (ja) 2020-01-27 2023-08-08 トヨタ自動車株式会社 作業システム
DE102020201375B3 (de) * 2020-02-05 2021-06-24 Magna Steyr Fahrzeugtechnik Ag & Co Kg Verfahren zur Überprüfung eines Sicherheitsbereichs eines Roboters
DE102020203636A1 (de) 2020-03-20 2021-09-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung eingetragener Verein Ermittlung von Sicherheitsbereichen um eine automatisiert arbeitende Maschine
GB2600123A (en) * 2020-10-21 2022-04-27 Sony Interactive Entertainment Inc Audio personalisation method and system
CN112612273B (zh) * 2020-12-21 2021-08-24 南方电网电力科技股份有限公司 一种巡检机器人避障路径规划方法、系统、设备和介质
AT524808B1 (de) * 2021-03-04 2024-06-15 Christian Norbert Neufeld Dr Verfahren zur festlegung eines sicherheitsbereiches
WO2022244127A1 (ja) * 2021-05-19 2022-11-24 ファナック株式会社 ロボットシステム
CN113545609B (zh) * 2021-06-04 2022-09-30 哈尔滨工业大学 一种图书馆图书上架装置
US20220395979A1 (en) * 2021-06-15 2022-12-15 X Development Llc Automated safety assessment for robot motion planning
SE2151256A1 (en) * 2021-10-13 2023-04-14 Husqvarna Ab Improved navigation for a robotic work tool system
CN118103177A (zh) * 2021-10-19 2024-05-28 Abb瑞士股份有限公司 处理工业机器人的安全的方法、控制系统和机器人系统
WO2023174872A1 (de) * 2022-03-15 2023-09-21 Kuka Deutschland Gmbh Prüfen einer sicherheitskonfiguration eines roboters

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005081445A (ja) * 2003-09-04 2005-03-31 Fanuc Ltd ロボットの干渉領域確認装置
JP5059978B2 (ja) * 2010-01-25 2012-10-31 パナソニック株式会社 危険提示装置、危険提示システム、危険提示方法およびプログラム

Family Cites Families (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4933864A (en) * 1988-10-04 1990-06-12 Transitions Research Corporation Mobile robot navigation employing ceiling light fixtures
US5835684A (en) * 1994-11-09 1998-11-10 Amada Company, Ltd. Method for planning/controlling robot motion
US5548694A (en) * 1995-01-31 1996-08-20 Mitsubishi Electric Information Technology Center America, Inc. Collision avoidance system for voxel-based object representation
WO1997010080A1 (fr) * 1995-09-14 1997-03-20 Kabushiki Kaisha Yaskawa Denki Unite d'enseignement pour robots
EP1450737A2 (en) * 2001-11-10 2004-09-01 ARIZONA BOARD OF REGENTS, acting on behalf of ARIZONA STATE UNIVERSITY Direct cortical control of 3d neuroprosthetic devices
GB0130986D0 (en) * 2001-12-27 2002-02-13 Prophet Control Systems Ltd Programming robots with offline design
US6678582B2 (en) * 2002-05-30 2004-01-13 Kuka Roboter Gmbh Method and control device for avoiding collisions between cooperating robots
DE10305384A1 (de) * 2003-02-11 2004-08-26 Kuka Roboter Gmbh Verfahren und Vorrichtung zur Visualisierung rechnergestützter Informationen
WO2004085120A1 (ja) * 2003-03-25 2004-10-07 Rorze Corporation ロボットシミュレーション装置、および、シミュレーションプログラム
JP3797986B2 (ja) * 2003-07-03 2006-07-19 ファナック株式会社 ロボットオフラインシミュレーション装置
JP3732494B2 (ja) * 2003-10-31 2006-01-05 ファナック株式会社 シミュレーション装置
US7447593B2 (en) * 2004-03-26 2008-11-04 Raytheon Company System and method for adaptive path planning
WO2005124486A2 (en) * 2004-06-15 2005-12-29 Abb Ab Method and system for off-line programming of multiple interacting robots
JP2006239844A (ja) * 2005-03-04 2006-09-14 Sony Corp 障害物回避装置、障害物回避方法及び障害物回避プログラム並びに移動型ロボット装置
US8930023B2 (en) * 2009-11-06 2015-01-06 Irobot Corporation Localization by learning of wave-signal distributions
JP4375320B2 (ja) * 2005-10-27 2009-12-02 株式会社日立製作所 移動ロボット
DE102005058867B4 (de) * 2005-12-09 2018-09-27 Cine-Tv Broadcast Systems Gmbh Verfahren und Vorrichtung zum Bewegen einer auf einem Schwenk- und Neigekopf angeordneten Kamera entlang einer vorgegebenen Bewegungsbahn
JP4159577B2 (ja) * 2005-12-13 2008-10-01 ファナック株式会社 複数のロボット間のインターロック自動設定装置及び自動設定方法
US7627394B2 (en) * 2005-12-20 2009-12-01 Kuka Roboter Gmbh Robot trajectory control including emergency evacuation path system and method
US8843234B2 (en) * 2006-04-13 2014-09-23 Fanuc America Corporation Dynamic space check for multi-arm system moving on a rail
US8924021B2 (en) * 2006-04-27 2014-12-30 Honda Motor Co., Ltd. Control of robots from human motion descriptors
ES2685250T3 (es) * 2006-05-11 2018-10-08 Abb Schweiz Ag Sincronización de un programa gráfico y un programa de robot
JP4238256B2 (ja) * 2006-06-06 2009-03-18 ファナック株式会社 ロボットシミュレーション装置
WO2008097252A2 (en) * 2006-06-22 2008-08-14 Roy Sandberg Method and apparatus for robotic path planning, selection, and visualization
US8355818B2 (en) * 2009-09-03 2013-01-15 Battelle Energy Alliance, Llc Robots, systems, and methods for hazard evaluation and visualization
EP1906281B1 (de) * 2006-09-30 2011-04-06 ABB Technology AG Verfahren und System zur Auslegung und Überprüfung von Sicherheitsbereichen eines Roboters
JP4550849B2 (ja) * 2007-03-22 2010-09-22 株式会社東芝 アーム搭載移動ロボット
US8214079B2 (en) * 2007-03-30 2012-07-03 Sungkyunkwan University Foundation For Corporate Collaboration Central information processing system and method for service robot having layered information structure according to recognition and reasoning level
EP1978432B1 (en) * 2007-04-06 2012-03-21 Honda Motor Co., Ltd. Routing apparatus for autonomous mobile unit
US20130165945A9 (en) * 2007-08-14 2013-06-27 Hansen Medical, Inc. Methods and devices for controlling a shapeable instrument
JP4328819B2 (ja) * 2007-11-30 2009-09-09 本田技研工業株式会社 移動装置およびその制御プログラム
US8315738B2 (en) * 2008-05-21 2012-11-20 Fanuc Robotics America, Inc. Multi-arm robot system interference check via three dimensional automatic zones
JP5329856B2 (ja) * 2008-06-27 2013-10-30 本田技研工業株式会社 行動推定システム
JP5216690B2 (ja) * 2009-06-01 2013-06-19 株式会社日立製作所 ロボット管理システム、ロボット管理端末、ロボット管理方法およびプログラム
JP5440840B2 (ja) * 2009-06-11 2014-03-12 ソニー株式会社 情報処理装置、情報処理方法、及び、プログラム
JP2010287028A (ja) * 2009-06-11 2010-12-24 Sony Corp 情報処理装置、情報処理方法、及び、プログラム
WO2011016280A1 (ja) * 2009-08-03 2011-02-10 本田技研工業株式会社 ロボットおよび制御システム
WO2011080882A1 (ja) * 2009-12-28 2011-07-07 パナソニック株式会社 動作空間提示装置、動作空間提示方法およびプログラム
JP5428965B2 (ja) * 2010-03-15 2014-02-26 オムロン株式会社 表示装置、表示制御方法、プログラム、およびコンピュータ読み取り可能な記録媒体
US8706298B2 (en) * 2010-03-17 2014-04-22 Raytheon Company Temporal tracking robot control system
DE102010017857B4 (de) 2010-04-22 2019-08-08 Sick Ag 3D-Sicherheitsvorrichtung und Verfahren zur Absicherung und Bedienung mindestens einer Maschine
US8723872B2 (en) * 2010-06-09 2014-05-13 Disney Enterprises, Inc. Display with robotic pixels
US20120075072A1 (en) * 2010-09-29 2012-03-29 Ravikanth Pappu Co-located radio-frequency identification fields
CN102085663B (zh) * 2010-12-22 2012-11-14 中国科学院深圳先进技术研究院 遥操作系统及方法
US8718837B2 (en) * 2011-01-28 2014-05-06 Intouch Technologies Interfacing with a mobile telepresence robot
JP2012218120A (ja) * 2011-04-12 2012-11-12 Seiko Epson Corp マニピュレーター動作予告装置、ロボットシステム及びマニピュレーター動作予告方法
JP2012236244A (ja) * 2011-05-10 2012-12-06 Sony Corp ロボット装置、ロボット装置の制御方法、並びにロボット装置制御用プログラム
WO2013074969A1 (en) * 2011-11-16 2013-05-23 University Of South Florida Systems and method for communicating robot intentions to human beings
US9044857B2 (en) * 2012-02-14 2015-06-02 Jerry Neal Sommerville Control system that guides a robot or articulated device with a laser distance meter for 3D motion, or guides a robot or articulated device with a computer pointing device (such as a mouse) for 2D motion
US9539726B2 (en) * 2012-04-20 2017-01-10 Vanderbilt University Systems and methods for safe compliant insertion and hybrid force/motion telemanipulation of continuum robots
JP5742862B2 (ja) * 2013-03-18 2015-07-01 株式会社安川電機 ロボット装置及び被加工物の製造方法
US20150202770A1 (en) * 2014-01-17 2015-07-23 Anthony Patron Sidewalk messaging of an autonomous robot
US9387589B2 (en) * 2014-02-25 2016-07-12 GM Global Technology Operations LLC Visual debugging of robotic tasks
US9272417B2 (en) * 2014-07-16 2016-03-01 Google Inc. Real-time determination of object metrics for trajectory planning
US9283678B2 (en) * 2014-07-16 2016-03-15 Google Inc. Virtual safety cages for robotic devices

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005081445A (ja) * 2003-09-04 2005-03-31 Fanuc Ltd ロボットの干渉領域確認装置
JP5059978B2 (ja) * 2010-01-25 2012-10-31 パナソニック株式会社 危険提示装置、危険提示システム、危険提示方法およびプログラム

Also Published As

Publication number Publication date
KR20170126510A (ko) 2017-11-17
US9821463B2 (en) 2017-11-21
US20160016315A1 (en) 2016-01-21
JP6436604B2 (ja) 2018-12-12
US9283678B2 (en) 2016-03-15
KR101797901B1 (ko) 2017-11-15
JP6392972B2 (ja) 2018-09-19
EP3169487A1 (en) 2017-05-24
KR101859350B1 (ko) 2018-05-18
WO2016010614A1 (en) 2016-01-21
KR20170126511A (ko) 2017-11-17
EP3169487B1 (en) 2021-12-15
JP2018086724A (ja) 2018-06-07
US20170043484A1 (en) 2017-02-16
US9522471B2 (en) 2016-12-20
CN106660208A (zh) 2017-05-10
KR20170014004A (ko) 2017-02-07
US20160207199A1 (en) 2016-07-21
CN106660208B (zh) 2018-06-26
JP2017523054A (ja) 2017-08-17

Similar Documents

Publication Publication Date Title
KR101859351B1 (ko) 로봇 디바이스에 대한 가상 안전 케이지
US11079897B2 (en) Two-way real-time 3D interactive operations of real-time 3D virtual objects within a real-time 3D virtual world representing the real world
JP6598090B2 (ja) 記憶媒体、ロボット動作を計画する方法、ロボット動作を計画するハードウェア、及びロボット
EP3391166B1 (en) Autonomous visual navigation
CN103885444A (zh) 信息处理方法、可移动电子设备和决策控制设备
WO2021235100A1 (ja) 情報処理装置、情報処理方法、及びプログラム
US11618164B2 (en) Robot and method of controlling same
WO2019054230A1 (en) ACTION PLAN PRODUCTION WHEN THE CLEAN POSITION IS UNKNOWN
WO2022153669A1 (ja) 分散協調システム、及びタスク実行方法
Będkowski et al. Methodology of control and supervision of web connected mobile robots with cuda technology application
US20220011856A1 (en) Strapless autonomous extended reality viewer
EP4276414A1 (en) Location-based autonomous navigation using a virtual world system
JP2024023104A (ja) ロボット制御システム、装置、方法及びプログラム
Zhou et al. Positioning System Based on Lidar Fusion
WO2020017356A1 (ja) 移動体、制御方法、およびプログラム
CN117346765A (zh) 一种获取不同高度位置三维建模图的路径感知及避障系统

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right