KR20180123725A - 차량용 센서 궤적 플래닝 - Google Patents

차량용 센서 궤적 플래닝 Download PDF

Info

Publication number
KR20180123725A
KR20180123725A KR1020187032217A KR20187032217A KR20180123725A KR 20180123725 A KR20180123725 A KR 20180123725A KR 1020187032217 A KR1020187032217 A KR 1020187032217A KR 20187032217 A KR20187032217 A KR 20187032217A KR 20180123725 A KR20180123725 A KR 20180123725A
Authority
KR
South Korea
Prior art keywords
sensor
environment
vehicle
determined
trajectory
Prior art date
Application number
KR1020187032217A
Other languages
English (en)
Other versions
KR102107555B1 (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 KR20180123725A publication Critical patent/KR20180123725A/ko
Application granted granted Critical
Publication of KR102107555B1 publication Critical patent/KR102107555B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0094Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots involving pointing a payload, e.g. camera, weapon, sensor, towards a fixed or moving target
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1615Programme controls characterised by special kind of manipulator, e.g. planar, scara, gantry, cantilever, space, closed chain, passive/active joints and tendon driven manipulators
    • B25J9/162Mobile manipulator, movable base with manipulator arm mounted on it
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0242Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using non-visible light signals, e.g. IR or UV signals
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • G05D1/0251Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means extracting 3D information from a plurality of images taken from different locations, e.g. stereo vision
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0257Control of position or course in two dimensions specially adapted to land vehicles using a radar
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0287Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling
    • G05D1/0291Fleet control
    • G05D1/0297Fleet control by controlling means in a control room
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/06Recognition of objects for industrial automation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Electromagnetism (AREA)
  • Economics (AREA)
  • Operations Research (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Orthopedic Medicine & Surgery (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Development Economics (AREA)
  • Quality & Reliability (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Traffic Control Systems (AREA)

Abstract

예시적인 시스템은 차량, 및 차량에 연결된 센서를 포함한다. 이러한 시스템은 차량이 따라갈 미리결정된 경로를 수신할 수 있다. 이러한 시스템은 또한 센서 데이터를 수집하기 위한, 대응하는 센서 데이터 세트와 연관된, 복수의 목표들을 수신할 수 있다. 이러한 시스템은, 복수의 목표들 각각에 대해, 대응하는 센서 데이터 세트를 획득하기 위해 센서가 스캐닝할 환경의 부분을 결정할 수 있다. 이러한 시스템은 복수의 목표들 각각에 대해 결정된 환경의 부분에 기반하여 센서를 이동시키기 위한 센서 궤적을 결정할 수 있다. 이러한 시스템은 센서로 하여금 결정된 센서 궤적을 통해 이동하게 하고 차량이 미리결정된 경로를 따라 이동함에 따라 결정된 센서 궤적에 대응하는 환경의 부분들을 스캐닝하게 할 수 있다.

Description

차량용 센서 궤적 플래닝
창고는 제조업자, 도매업자 및 운송업을 포함한, 다양하고 상이한 타입들의 상업적 엔티티들에 의한 상품의 저장에 이용될 수 있다. 예시적인 저장 상품은 원자재들, 부품들 또는 구성요소들, 포장 물질들 및 완제품들을 포함할 수 있다. 일부 경우들에서, 창고는 상품을 배달 트럭들이나 다른 타입들의 차량들에 싣고 이로부터 내리는 하역장(loading dock)을 구비할 수 있다. 창고에서는 또한 박스들 또는 다른 오브젝트들의 더미들을 포함하는 납작한 운반 구조물들인 팔레트들의 저장을 허용하기 위해 팔레트 랙(rack)들의 열들을 이용할 수 있다. 또한, 창고에서는 상품들 또는 상품들의 팔레트들을 들어올리고 이동시키기 위한 기계들 또는 차량들, 예컨대 크레인들, 지게차들 및 팔레트 잭들을 이용할 수 있다. 인간 운영자들이 기계들, 차량들 및 기타 장비를 조작하도록 고용될 수 있다. 일부 경우들에서, 기계들 또는 차량들 중 하나 이상은 컴퓨터 제어 시스템들에 의해 유도되는 로봇식 디바이스일 수 있다.
자율 또는 반자율 차량은 이에 연결된 센서를 가질 수 있다. 센서는 예를 들어 스테레오 카메라와 같은 제한된 시야를 갖는 비전 센서일 수 있다. 차량의 제어 시스템은 글로벌 플래닝 시스템으로부터, 환경 내의 작업을 수행하기 위해 차량이 따라갈 미리결정된 경로를 수신할 수 있다. 대안적으로, 제어 시스템은 차량이 따라갈 미리결정된 경로를 결정할 수 있다. 제어 시스템은 또한 차량이 미리결정된 경로를 따라 이동함에 따라 센서 데이터를 수집하기 위한 복수의 목표들(objectives)을 수신 및/또는 결정할 수 있다. 복수의 목표들 각각은 대응하는 센서 데이터 세트와 연관될 수 있다. 대응하는 센서 데이터 세트를 획득하기 위해, 제어 시스템은 센서가 스캐닝할 환경의 부분들을 결정할 수 있다. 환경의 결정된 부분들에 기반하여, 제어 시스템은 차량이 미리결정된 경로를 따라 이동하는 동안 센서를 이동시키기 위한 센서 궤적을 결정할 수 있다. 결정된 센서 궤적을 따라 센서를 이동시키는 것은 차량이 미리결정된 경로를 따라 이동함에 따라 센서의 시야 내에 환경의 결정된 부분들을 배치할 수 있다. 또한, 제어 시스템은 센서로 하여금 결정된 센서 궤적을 통해 이동하게 하는 명령어들을 제공할 수 있다.
일 예에서, 차량, 및 차량에 연결된 센서를 포함하는 시스템이 제공된다. 센서는 차량에 대해 이동하여 센서에 의해 관측가능한 환경의 부분을 제어하도록 구성될 수 있다. 시스템은 차량이 따라갈 미리결정된 경로를 수신하도록 구성된 제어 시스템을 포함할 수 있다. 제어 시스템은 또한 차량이 미리결정된 경로를 따라 이동함에 따라 센서 데이터를 수집하기 위한 복수의 목표들을 수신하도록 구성될 수 있다. 복수의 목표들 각각은 대응하는 센서 데이터 세트와 연관될 수 있다. 제어 시스템은, 복수의 목표들 각각에 대해, 대응하는 센서 데이터 세트를 획득하기 위해 센서가 스캐닝할 환경의 적어도 하나의 부분을 결정하도록 추가적으로 구성될 수 있다. 제어 시스템은 또한 복수의 목표들 각각에 대해 결정된 환경의 적어도 하나의 부분에 기반하여, 차량이 미리결정된 경로를 따라 이동하는 동안 센서를 이동시키기 위한 센서 궤적을 결정하도록 구성될 수 있다. 또한, 제어 시스템은 센서로 하여금 결정된 센서 궤적을 통해 이동하게 하고 차량이 미리결정된 경로를 따라 이동함에 따라 결정된 센서 궤적에 대응하는 환경의 부분들을 스캐닝하게 하는 명령어들을 제공하도록 구성될 수 있다.
다른 예에서, 차량이 따라갈 미리결정된 경로를 수신하는 단계를 포함하는 방법이 제공된다. 이 방법은 또한 차량이 미리결정된 경로를 따라 이동함에 따라 차량에 연결된 센서로부터 센서 데이터를 수집하기 위한 복수의 목표들을 수신하는 단계를 포함한다. 복수의 목표들 각각은 대응하는 센서 데이터 세트와 연관될 수 있다. 센서는 차량에 대해 이동하여 센서에게 보이는 환경의 부분을 제어하도록 구성될 수 있다. 이 방법은 복수의 목표들 각각에 대해, 대응하는 센서 데이터 세트를 획득하기 위해 센서가 스캐닝할 환경의 적어도 하나의 부분을 결정하는 단계를 추가적으로 포함한다. 또한, 이 방법은 복수의 목표들 각각에 대해 결정된 환경의 적어도 하나의 부분에 기반하여, 차량이 미리결정된 경로를 따라 이동하는 동안 센서를 이동시키기 위한 센서 궤적을 결정하는 단계를 포함한다. 또한, 이 방법은 센서로 하여금 결정된 센서 궤적을 통해 이동하게 하고 차량이 미리결정된 경로를 따라 이동함에 따라 결정된 센서 궤적에 대응하는 환경의 부분들을 스캐닝하게 하는 단계를 포함한다.
추가 예에서, 컴퓨팅 디바이스에 의해 실행될 때, 컴퓨팅 디바이스로 하여금 동작들을 수행하게 하는 명령어들을 저장하는 비일시적 컴퓨터 판독가능한 매체가 제공된다. 이러한 동작들은 차량이 따라갈 미리결정된 경로를 수신하는 것을 포함한다. 이러한 동작들은 또한 차량이 미리결정된 경로를 따라 이동함에 따라 차량에 연결된 센서로부터 센서 데이터를 수집하기 위한 복수의 목표들을 수신하는 것을 포함한다. 복수의 목표들 각각은 대응하는 센서 데이터 세트와 연관될 수 있다. 센서는 차량에 대해 이동하여 센서에게 보이는 환경의 부분을 제어하도록 구성될 수 있다. 이러한 동작들은, 복수의 목표들 각각에 대해, 대응하는 센서 데이터 세트를 획득하기 위해 센서가 스캐닝할 환경의 적어도 하나의 부분을 결정하는 것을 추가적으로 포함한다. 또한, 이러한 동작들은 복수의 목표들 각각에 대해 결정된 환경의 적어도 하나의 부분에 기반하여, 차량이 미리결정된 경로를 따라 이동하는 동안 센서를 이동시키기 위한 센서 궤적을 결정하는 것을 포함한다. 또한, 이러한 동작들은 센서로 하여금 결정된 센서 궤적을 통해 이동하게 하고 차량이 미리결정된 경로를 따라 이동함에 따라 결정된 센서 궤적에 대응하는 환경의 부분들을 스캐닝하게 하는 것을 포함한다.
추가 예에서, 차량 수단, 및 차량 수단에 연결된 검출 수단을 포함하는 시스템이 제공된다. 검출 수단은 차량 수단에 대해 이동하여 검출 수단에 의해 관측가능한 환경의 부분을 제어하도록 구성될 수 있다. 시스템은 차량이 따라갈 미리결정된 경로를 수신하도록 구성된 제어 수단을 포함할 수 있다. 제어 수단은 또한 차량이 미리결정된 경로를 따라 이동함에 따라 검출 수단으로부터 데이터를 수집하기 위한 복수의 목표들을 수신하도록 구성될 수 있다. 복수의 목표들 각각은 검출 수단으로부터의 대응하는 데이터 세트와 연관될 수 있다. 제어 수단은 추가로, 복수의 목표들 각각에 대해, 대응하는 센서 데이터 세트를 획득하기 위해 검출 수단이 스캐닝할 환경의 적어도 하나의 부분을 결정하도록 구성될 수 있다. 제어 수단은 복수의 목표들 각각에 대해 결정된 환경의 적어도 하나의 부분에 기반하여, 차량 수단이 미리결정된 경로를 따라 이동하는 동안 검출 수단을 이동시키기 위한 검출 수단 궤적을 결정하도록 추가로 구성될 수 있다. 또한, 제어 수단은 검출 수단으로 하여금 결정된 검출 수단 궤적을 통해 이동하게 하고 차량 수단이 미리결정된 경로를 따라 이동함에 따라 결정된 검출 수단 궤적에 대응하는 환경의 부분들을 스캐닝하게 하는 명령어들을 제공하도록 구성될 수 있다.
위 내용은 단지 예시적이고, 임의의 방식으로 제한하는 것으로 의도되지 않는다. 위에서 설명된 예시적인 양태들, 실시예들 및 특징들에 더하여, 추가의 양태들, 실시예들 및 특징들은 도면들 및 다음의 상세한 설명과 첨부 도면들을 참조하면 명백해질 것이다.
도 1은 예시적인 실시예에 따른 차량 시스템의 블록도를 도시한다.
도 2a는 예시적인 실시예에 따른 로봇식 차량군을 도시한다.
도 2b는 예시적인 실시예에 따른 로봇식 차량군의 구성요소들의 기능 블록도를 도시한다.
도 3a는 예시적인 실시예에 따른 로봇식 트럭 언로더를 도시한다.
도 3b는 예시적인 실시예에 따른 자율 유도 차량을 도시한다.
도 3c는 예시적인 실시예에 따른 자율 포크 트럭을 도시한다.
도 4는 예시적인 실시예에 따른 예시적인 센서 궤적 플래닝 동작들을 도시한다.
도 5는 예시적인 실시예에 따른 예시적인 특징 검출 동작을 도시한다.
도 6은 예시적인 실시예에 따른 예시적인 장애물 검출 동작들을 도시한다.
도 7은 예시적인 실시예에 따른 예시적인 후보 궤적 플래닝 동작들을 도시한다.
이하의 상세한 설명에서는 첨부 도면들을 참조하여 개시된 디바이스들, 시스템들 및 방법들의 다양한 특징들 및 동작들을 설명한다. 본 명세서에서 설명된 예시적인 디바이스, 시스템 및 방법의 실시예들은 제한하려는 것이 아니다. "예시적", "예시" 및 "예시적인"이라는 단어들은 "예, 사례 또는 예시로서 제공된다는 것"을 의미하는 것으로 본 명세서에서 사용된다는 것을 이해해야 한다. 본 명세서에서 "예시적", "예시" 또는 "예시적인" 것으로 설명된 임의의 구현예, 실시예 또는 특징은 다른 구현예들, 실시예들 또는 특징들보다 바람직하거나 유리한 것으로 반드시 해석될 필요는 없다. 또한, 본 명세서에서 일반적으로 설명되고 도면들에 도시된 바와 같은 본 개시내용의 양태들은 매우 다양하고 상이한 구성들로 배열, 대체, 결합, 분리 및 설계될 수 있다.
이하의 상세한 설명에서는, 그 부분을 형성하는 첨부 도면들에 대한 참조가 이루어진다. 도면들에서, 유사한 부호들은, 문맥이 달리 기술되지 않으면, 유사한 구성요소들을 통상적으로 식별한다. 본 명세서에서 제시된 주제의 사상 또는 범주로부터 벗어나지 않는 한, 다른 실시예들이 이용될 수 있고, 다른 변경들이 이루어질 수 있다. 또한, 달리 언급되지 않는다면, 도면들은 축적대로 도시되지 않으며, 단지 예시적인 목적들로만 이용된다. 또한, 도면들은 단지 표현적인 것이며, 모든 구성요소들이 도시되지는 않는다. 예를 들어, 추가의 구조적이거나 제한적인 구성요소들이 도시되지 않을 수 있다.
Ⅰ. 개요
자율 또는 반자율 차량은 환경 내에서 상이한 작업들을 달성하기 위해 환경을 통해 이동하도록 구성될 수 있다. 상이한 작업들은 차량이 작동하는 환경뿐만 아니라 차량의 타입에 따라 달라질 수 있다. 예를 들어, 차량은 지게차(예를 들어, 포크 트럭) 또는 창고 환경 내에서 작동하는 팔레트 잭일 수 있다. 따라서, 상이한 작업들은 박스들 이동, 박스들 또는 다른 오브젝트들의 팔레트들 이동, 트럭들의 싣고/내리기 및/또는 저장 선반들의 싣고/내리기를 포함할 수 있다.
차량에는 다른 가능한 것들 중에서도 카메라, 스테레오 카메라, 깊이 센서, LIDAR, 레이더 및/또는 적외선 센서와 같은 센서가 장착될 수 있다. 센서의 시야가 제한될 수 있다. 그 결과, 센서는 팬-헤드, 하나 이상의 회전 조인트, 및/또는 센서가 차량에 대해 회전 및/또는 병진하여 센서의 시야 내의 환경의 부분을 제어할 수 있게 하는 하나 이상의 병진 운동 메커니즘을 통해 차량에 연결될 수 있다. 차량은 차량이 환경의 부분을 통해 따라갈 미리결정된 경로를 수신하거나 결정할 수 있다. 예를 들어, 복수의 차량들의 동작들을 동기화하도록 구성된 글로벌 플래닝 시스템은 차량에게 미리결정된 경로를 제공할 수 있다. 차량은 센서 데이터 및/또는 차량에 명령된 작업 또는 동작에 기반하여 경로를 결정하거나 변경할 수 있다.
차량이 미리결정된 경로를 따라 이동함에 따라, 센서는 복수의 목표들을 위한 센서 데이터를 수집하는데 이용될 수 있다. 목표들은 차량이 주행할 것으로 예상되는 경로를 따른 장애물 검출, 차량이 오브젝트들을 배치할 것으로 예상되거나 플래닝되는 환경 영역들에서의 장애물 검출, 환경 내의 차량의 위치를 결정하거나 확인하기 위한 환경 내의 랜드마크 검출, 및/또는 환경 내의 관심 오브젝트(예를 들어, 박스들, 팔레트들) 검출을 포함할 수 있다. 목표들의 다른 예들이 가능할 수 있으며 차량의 타입 및 차량이 동작하거나 동작할 것으로 예상되는 환경의 타입에 따라 달라질 수 있다. 예를 들어, 공공 도로들 상에서 동작하도록 구성된 차량의 동작은 차선 식별, 보행자 식별 및/또는 다른 차량 식별을 포함할 수 있다. 목표들은 글로벌 플래닝 시스템으로부터 수신될 수 있거나 차량에 의해 결정될 수 있다. 일부 예들에서, 목표들은 차량이 동일한 목표 세트에 대한 센서 데이터를 수집하기 위해 항상 센서를 이용할 수 있다는 점에서 정적일 수 있다. 다른 예들에서, 목표들은 동적일 수 있다. 예를 들어, 목표들은 차량에 의해 현재 수행되거나 수행될 것으로 예상되는 작업 또는 동작에 기반하여 주기적으로 업데이트되거나 변경될 수 있다.
복수의 목표들에 대한 센서 데이터를 수집하기 위해 하나의 센서(또는 복수의 목표들의 목표당 하나 미만의 센서)를 이용하는 것은 목표당 하나 이상의 센서를 이용하는 것보다 저렴하고 더 효율적일 수 있다. 더 적은 수의 센서들을 가진 차량 시스템은 제조 비용이 저렴하고, 프로그래밍이 쉽고, 동작하기가 더 쉬울 수 있다. 더 적은 수의 센서들 외에도, 차량 시스템은 센서 데이터를 수신하고 처리하기 위한 하드웨어 구성요소들을 더 적게 포함할 수 있다. 또한, 더 적은 수의 센서들(예를 들어, 하나의 센서)은 복수의 목표들 각각에 전용인 하나 이상의 센서를 갖는 시스템과 비교하여 센서들의 이용을 증가시킬 수 있다. 예를 들어, 복수의 목표들 중 특정 목표(예를 들어, 팔레트 검출)이 능동적으로 추구되지 않을 때(예를 들어, 팔레트 검출을 위한 데이터가 수집되고 있지 않을 때), 특정 목표에 전용인 센서는 유휴일 수 있으며, 이에 따라 미이용 자원일 수 있다. 이에 비해, 하나의 센서만을 갖는 차량 시스템은 장애물 검출과 같은 적어도 하나의 목표를 위해 그 센서를 지속적으로 이용할 수 있다.
복수의 목표들 각각은 각각의 목표에 대응하는 센서 데이터를 획득하기 위해 센서가 스캐닝할 환경의 부분들과 연관되거나 이에 대해 결정될 수 있다. 예를 들어, 장애물들을 검출하기 위해, 센서는 차량 전방의 환경의 부분들 또는 차량이 따라가고 있거나 따라갈 예정인 미리결정된 경로를 따른 환경의 부분들을 스캐닝할 수 있다. 복수의 목표들 각각과 연관된 환경의 부분들은 환경 내의 오브젝트의 예상 위치에 기반하여 결정될 수 있다. 예를 들어, 창고의 통로를 통과할 때, 관심 오브젝트들(예를 들어, 박스들, 팔레트들)은 통로를 구성하는 선반들/랙들 상에서 차량의 양측에 위치할 것으로 예상될 수 있다.
복수의 목표들 각각과 연관된 환경의 부분들에 기반하여, 차량의 제어 시스템은 차량이 미리결정된 경로를 따라 이동함에 따라 센서를 이동시키기 위한 센서 궤적을 결정할 수 있다. 제어 시스템은 센서로 하여금 결정된 센서 궤적을 통해 이동하게 하고 센서 궤적을 따라 환경의 부분들을 스캐닝하게 하는 명령어들을 추가로 제공할 수 있다. 센서 궤적은 각도 위치 궤적, 및 각도 위치 궤적에 대응하는 속도 프로파일을 포함할 수 있다. 센서 궤적을 따라 환경의 부분들을 스캐닝하는 것은 복수의 목표들 각각과 연관된 센서 데이터의 적어도 일부분을 제어 시스템에게 제공할 수 있다. 일부 예들에서, 센서 궤적을 따라 환경의 부분들을 스캐닝하는 것은 복수의 목표들과 연관된 환경의 부분들 각각을 스캐닝하는 것을 포함할 수 있다. 다른 예들에서, 복수의 목표들과 연관된 환경의 부분들 중 일부만이 스캐닝될 수 있다.
일 실시예에서, 제어 시스템은 센서가 결정된 센서 궤적을 따라 이동함에 따라 하나 이상의 센서 성능 파라미터를 조정하도록 결정할 수 있다. 센서 성능 파라미터들은 다수의 다른 가능한 센서 파라미터들 중에서 줌/배율 레벨, 프레임 레이트, 해상도, 이미지 노출, 화이트 밸런스 및/또는 이득을 포함할 수 있다. 하나 이상의 센서 성능 파라미터는 결정된 센서 궤적을 따라 센서에 의해 캡처된 센서 데이터의 각각의 프레임에 대해 조정/결정될 수 있다. 일부 실시예들에서, 제어 시스템은 하나 이상의 센서 성능 파라미터에 기반하여 센서 궤적을 결정할 수 있다. 예를 들어, 환경의 특정 부분은 특정 오브젝트의 상세한 표현을 캡처하기 위해 높은 레벨의 배율로 스캐닝해야 할 수 있다. 따라서, 센서가 특정 오브젝트를 포함하는 환경의 특정 부분을 넘어 패닝(pan)하기 전에 센서의 배율 레벨을 조정하기에 충분한 시간을 제공하는 센서 궤적이 결정될 수 있다.
다른 실시예에서, 복수의 목표들 각각은 대응하는 우선순위 레벨과 연관될 수 있다. 센서 궤적을 결정할 때, 제어 시스템은 낮은 우선순위 레벨을 갖는 목표들에 비해 높은 우선순위 레벨을 갖는 목표들을 우선순위화할 수 있다. 높은 우선순위 레벨을 갖는 목표들은 차량이 미리결정된 경로를 따라 안전하게 진행할 수 있게 하는데 필요한 환경의 부분들을 스캐닝하는 것과 연관될 수 있다. 예를 들어, 미리결정된 경로를 따라 장애물들을 검출하지 못하면 환경의 피처들, 환경 내의 오브젝트들 또는 다른 차량들과 차량이 충돌하여 차량의 동작을 방해하거나 정지시킬 수 있다는 점에서 장애물 검출은 높은 우선순위 목표일 수 있다. 이에 비해, 관심 오브젝트들의 검출은 차량이 동작할 관심 오브젝트를 검출하지 못하면 차량을 손상시킬 위험을 제기하지 않을 것이라는 점에서 우선순위가 낮은 작업일 수 있다. 그러나, 동작할 오브젝트들을 검출하는데 실패하는 것은 그럼에도 불구하고 동작할 새로운 오브젝트들을 찾기 위해 추가 스캔들을 수행하는 것과 연관된 시간 지연으로 인해 바람직하지 않을 수 있다.
일부 실시예들에서, 센서 궤적은 우선순위가 높은 작업들에 대응하는 환경의 모든 부분들을 스캐닝하지만 우선순위가 낮은 작업들에 대응하는 환경의 부분들 중 일부만을 스캐닝하도록 나타낼 수 있다. 예를 들어, 우선순위가 낮은 작업들에 대응하는 환경의 부분들은 우선순위가 높은 작업들에 대응하는 환경의 모든 부분들이 스캐닝된 후에 스캐닝될 수 있다. 다른 예에서, 낮은 우선순위 작업들에 대응하는 환경의 부분들과 높은 우선순위 작업들에 대응하는 환경의 부분들 사이의 중첩은 높은 우선순위 및 낮은 우선순위의 작업들에 대응하는 데이터의 동시 획득을 허용할 수 있다. 하나 이상의 센서 성능 파라미터는 복수의 목표들과 연관된 우선순위 레벨들에 기반하여 결정된 센서 궤적을 따라 센서에 의해 캡처된 센서 데이터의 각각의 프레임에 대해 조정/결정될 수 있다. 예를 들어, 높은 우선순위 작업들에 대응하는 환경의 부분들은 높은 해상도로 스캐닝될 수 있는 반면, 낮은 우선순위 작업들에 대응하는 환경의 부분들은 낮은 해상도로 스캐닝될 수 있다.
다른 실시예들에서, 제어 시스템은 복수의 목표들 각각에 대응하는 환경의 부분들을 스캐닝하는 것과 연관된 비용을 결정할 수 있다. 이 비용은 환경 내의 환경의 부분들의 각각의 위치들 및/또는 센서의 현재 위치 또는 예상되는 장래 위치에 대한 환경의 부분들의 각각의 위치들에 기반할 수 있다. 예를 들어, 장애물 검출은 미리결정된 경로를 따라 환경의 영역을 스캐닝하는 것을 포함할 수 있다. 미리결정된 경로를 따라 환경의 영역을 스캐닝하는 것은 센서의 최소 움직임을 수반할 수 있다(예를 들어, 차량의 바로 앞 영역을 스캐닝하는 것은 최소 센서 패닝을 요구할 수 있다). 이에 비해, 오브젝트(예를 들어, 박스, 팔레트) 검출은 차량의 좌측 및 우측으로의 스캐닝 영역들을 포함할 수 있다. 따라서, 차량의 좌측 및 우측으로의 영역들을 스캐닝하도록 센서를 패닝하는 것은 차량의 바로 앞 영역을 스캐닝하는 것에 비해 센서의 움직임이 증가하는 것을 수반할 수 있다. 그 결과, 오브젝트 검출은 환경의 대응하는 부분들을 스캐닝하도록 센서를 패닝하기 위한 더 높은 시간 및 전력 비용과 연관될 수 있다.
유사하게, 환경의 부분들을 스캐닝하는 것과 연관된 비용은 복수의 목표들 각각에 대응하는 환경의 부분들과 연관되거나 결정되는 하나 이상의 센서 성능 파라미터(예를 들어, 배율 레벨, 프레임 레이트, 이미지 노출, 이득 등)에 기반할 수 있다. 예를 들어, 환경의 특정 부분에 대한 보다 상세한 스캔을 캡처하기 위해 줌 인하는 것은 센서의 줌 레벨을 조정하는데 드는 시간 비용, 및 환경의 더 적은 범위를 스캐닝하는 기회 비용과 연관될 수 있다(예를 들어, 더 높은 줌 레벨은 센서의 더 작은 시야 범위에 대응할 수 있다).
제어 시스템은 복수의 목표들 각각과 연관된 비용에 기반하여 복수의 목표들에 대한 전체 비용 함수를 결정할 수 있다. 전체 비용 함수는 다른 가능한 자원 비용들 중에서 시간 비용, 전력 비용 및/또는 스캔 해상도 비용을 포함할 수 있다. 제어 시스템은 전체 비용 함수를 최소화하는 센서 궤적을 결정할 수 있다. 예를 들어, 전체 비용 함수를 최소화하는 것은 센서 궤적에 대응하는 환경의 부분들이 센서의 패닝 움직임의 반복된 방향 변화들을 피하는 환경의 인접 부분들의 순차 스캐닝을 생성하도록 스캐닝되는 순서를 변경하는 것을 포함할 수 있다.
일 실시예에서, 센서 궤적을 결정하기 위한 동작들은 미리결정된 경로의 시작에서의 센서 위치(예를 들어, 현재 센서 위치)와 미리결정된 경로의 끝에서의 복수의 후보 센서 위치들 사이에서 복수의 후보 센서 궤적들을 결정하는 것을 포함할 수 있다. 복수의 후보 센서 궤적들은 미리결정된 경로를 복수의 시점들로 이산화함으로써 결정될 수 있다. 각각의 시점에 대해, 센서의 최대 회전 속도 및 이전 시점에서의 센서의 각도 위치가 주어지면, 센서가 이동될 수 있는 복수의 후보 각도 위치들이 결정될 수 있다. 후보 각도 위치들의 복수의 시퀀스들은 미리결정된 경로의 시작에 대응하는 시점과 미리결정된 경로의 끝 사이에서 결정될 수 있다. 복수의 후보 센서 궤적들은 후보 각도 위치들의 복수의 시퀀스들을 포함할 수 있다.
동작들은 후보 센서 궤적들의 각각의 후보 센서 궤적에 대해, 각각의 센서 궤적을 따라 센서에 의해 관측가능한 환경의 부분들의 세트를 결정하는 것을 더 포함할 수 있다. 특정 센서 궤적은 복수의 목표들과 연관된 환경의 부분들에 가장 근접하게 일치하는 환경의 부분들의 세트와 연관된 후보 센서 궤적을 선택함으로써 복수의 후보 센서 궤적들로부터 선택될 수 있다. 일 예에서, 센서에게 관측가능한 환경 내의 별개의 피처들의 수를 최대화하는 센서 궤적이 선택될 수 있다. 다른 예에서, 센서에게 관측가능한 환경의 높은 우선순위 부분들의 수를 최대화하는 센서 궤적이 선택될 수 있다.
동작들은 또한 센서에 대한 하나 이상의 센서 파라미터를 결정 및/또는 조정하는 것을 더 포함할 수 있다. 센서 파라미터들은 다른 가능한 파라미터들 중에서 센서의 줌/배율 레벨, 센서의 프레임 레이트, 센서에 의해 수행된 스캔들의 해상도, 이미지 노출, 화이트 밸런스 및/또는 센서의 이득 레벨을 포함할 수 있다. 일 예에서, 하나 이상의 센서 파라미터는 센서를 이동시키기 위한 센서 궤적을 결정한 후에 결정될 수 있다. 구체적으로, 하나 이상의 센서 파라미터는 결정된/선택된 센서 궤적을 따라 센서에 의해 관측가능한 환경의 각각의 부분에 대해 결정될 수 있다.
다른 예에서, 하나 이상의 후보 센서 파라미터는 복수의 후보 센서 궤적들의 각각의 후보 센서 궤적에 대해 결정될 수 있다. 복수의 후보 센서 궤적들로부터 특정 센서 궤적의 선택은 각각의 후보 센서 궤적에 대응하는 결정된 후보 센서 파라미터들에 기반할 수 있다. 구체적으로, 후보 센서 파라미터들은 센서가 특정 후보 센서 궤적을 따라 이동함에 따라 센서가 이동될 수 있는 복수의 후보 각도 위치들의 각각의 후보 각도 위치에 대해 결정될 수 있다. 따라서, 센서가 복수의 목표들과 연관된 환경의 부분들을 스캐닝할 뿐만 아니라 환경의 각각의 부분이 스캐닝되는 품질을 향상 및/또는 최적화할 수 있게 하는 센서 궤적이 선택될 수 있다. 차량의 제어 시스템은 하나 이상의 결정된 센서 파라미터에 기반하여, 센서가 결정된 센서 궤적을 통해 이동하고 결정된 센서 궤적에 대응하는 환경의 부분들을 스캐닝할 때 센서의 파라미터들을 설정 또는 조정하기 위한 명령어들을 제공할 수 있다.
추가 예에서, 센서가 결정된 센서 궤적을 따라 환경의 부분들을 스캐닝함에 따라 하나 이상의 센서 파라미터가 업데이트될 수 있다. 예를 들어, 센서의 프레임 레이트는 환경의 각각의 부분의 복수의 데이터/이미지 프레임들을 캡처하기에 충분할 수 있다. 센서는 초기에 하나 이상의 결정된 센서 파라미터(예를 들어, 초기 파라미터들)로 환경의 특정 부분을 스캐닝할 수 있다. 획득된 데이터가 대응 동작(예를 들어, 기준 태그를 인식)을 수행하기에 충분한지 여부를 결정하기 위해 각각의 데이터/이미지 프레임이 분석될 수 있다. 이러한 분석에 기반하여, (예를 들어, 제어 시스템이 피드백 시스템을 구현할 수 있는) 환경의 특정 부분의 후속 스캔들의 품질을 향상시키기 위해 센서 파라미터들에 대한 하나 이상의 업데이트가 결정될 수 있다. 센서 파라미터들에 대한 하나 이상의 업데이트는 대응하는 동작을 수행하기에 충분한 데이터를 제공하는 후속 스캔들의 확률을 증가시킬 수 있다.
다른 실시예에서, 센서 기준 프레임은 미리결정된 경로를 따라 복수의 시점들의 각각의 시점에서 결정될 수 있다. 차량이 미리결정된 경로를 따라 이동함에 따라, 센서가 능동적으로 작동하지 않아도 차량의 움직임으로 인해 환경에 대한 센서의 자세가 변할 수 있다. 이 변화하는 자세는 센서 기준 프레임으로 이용될 수 있다. 센서 궤적을 결정하는 것은 복수의 시점들의 각각의 시점에 대해, 특정 시점에 대응하는 센서 기준 프레임에 대해 특정 시점에서 센서의 방향을 전환하는 방법을 결정하는 것을 포함할 수 있다. 예를 들어, 차량이 특정 시점에서 우회전하도록 플래닝된 경우, 센서 위치는 그 환경의 부분에서의 센서가 특정 시점 이전의 시점에서 센서에 의해 관측가능한 환경의 부분의 우측을 가리키도록 조정될 필요가 없을 수 있다. 그 결과, 복수의 목표들에 대응하는 환경의 부분들을 스캐닝하는데 필요한 센서의 움직임은 감소되거나 최소화될 수 있다.
일반적으로, 복수의 후보 센서 궤적들로부터 센서 궤적을 선택하는 것은 복수의 목표들과 연관된 파라미터들을 나타내는 목표 함수에 기반할 수 있다. 파라미터들은 다른 가능한 것들 중에서 센서 궤적을 따라 관측가능한 별개의 피처들(예를 들어, 오브젝트들, 랜드마크들)의 수, 센서 궤적을 따라 관측가능한 환경의 별개의 부분들의 수, 센서 궤적의 부분들에 대응하는 스캔 품질(예를 들어, 배율, 해상도들, 노출, 화이트 밸런스, 이득 등), 및/또는 센서 궤적이 복수의 목표들 각각과 연관된 환경의 부분들을 커버할 수 있는 속력을 포함할 수 있다. 목표 함수 및/또는 그 임의의 파라미터들을 최대화하는 센서 궤적이 선택될 수 있다. 목표 함수는 차량에 의해 결정되고/되거나 차량의 사용자/운전자에 의해 지정된 글로벌 플래닝 시스템에 의해 제공될 수 있다.
Ⅱ. 예시적인 로봇식 차량 시스템
도 1은 본 명세서에서 설명된 실시예들과 관련하여 이용될 수 있는 차량 시스템의 예시적인 구성을 도시한다. 차량 시스템(100)은 자율적으로, 반자율적으로 및/또는 사용자(들)에 의해 제공된 지시들을 이용하여 동작하도록 구성될 수 있다. 차량 시스템(100)은 지게차들, 팔레트 잭들, 자동차들, 트럭들, 오토바이들, 버스들, 보트들, 비행기들, 헬리콥터들, 벌초기들, 굴삭기들, 보트들, 스노모빌들, 항공기, 레저 차량들, 놀이 공원 차량들, 농업용 장비, 건설 장비, 창고 장비, 전차들, 골프 카트들, 기차들 및 트롤리들과 같은 다양한 형태들로 구현될 수 있다. 다른 형태들이 또한 가능한다. 또한, 차량 시스템(100)은 다른 지정들 중에서도 로봇, 로봇식 디바이스, 이동 로봇 또는 로봇식 차량으로 또한 지칭될 수 있다.
도 1에 도시된 바와 같이, 차량 시스템(100)은 함께 제어 시스템(118)의 일부일 수 있는 프로세서(들)(102), 데이터 저장소(104) 및 제어기(들)(108)를 포함할 수 있다. 차량 시스템(100)은 또한 센서(들)(112), 전원(들)(114), 기계적 구성요소들(110), 전기적 구성요소들(116) 및 통신 링크(들)(120)를 포함할 수 있다. 그렇지만, 차량 시스템(100)은 예시적인 목적들로 도시되어 있으며, 더 많거나 더 적은 구성요소들을 포함할 수 있다. 차량 시스템(100)의 다양한 구성요소들은 유선 또는 무선 연결들을 포함하는 임의의 방식으로 연결될 수 있다. 또한, 일부 예들에서, 차량 시스템(100)의 구성요소들은 단일 물리적 엔티티가 아닌 복수의 물리적 엔티티들 중에 분산될 수 있다. 차량 시스템(100)의 다른 예시적인 예들이 또한 존재할 수 있다.
프로세서(들)(102)는 하나 이상의 범용 하드웨어 프로세서 또는 특수 목적 하드웨어 프로세서(예를 들어, 디지털 신호 프로세서들, 주문형 집적 회로들 등)로서 동작할 수 있다. 프로세서(들)(102)는 컴퓨터 판독가능한 프로그램 명령어들(106)을 실행하고 데이터(107)를 조작하도록 구성될 수 있으며, 이들 둘 다는 데이터 저장소(104)에 저장된다. 프로세서(들)(102)는 또한 센서(들)(112), 전원(들)(114), 기계적 구성요소들(110), 전기적 구성요소들(116) 및/또는 통신 링크(들)(120)와 같은, 차량 시스템(100)의 다른 구성요소들과 직접적으로 또는 간접적으로 상호작용할 수 있다.
데이터 저장소(104)는 하나 이상의 타입의 하드웨어 메모리일 수 있다. 예를 들어, 데이터 저장소(104)는 프로세서(들)(102)에 의해 판독되거나 액세스될 수 있는 하나 이상의 컴퓨터 판독가능한 저장 매체의 형태를 포함하거나 그 형태를 취할 수 있다. 하나 이상의 컴퓨터 판독가능한 저장 매체는 프로세서(들)(102)와 전체 또는 부분적으로 통합될 수 있는 광학, 자기, 유기 또는 다른 타입의 메모리 또는 저장소와 같은 휘발성 및/또는 비휘발성 저장 구성요소들을 포함할 수 있다. 일부 실시예들에서, 데이터 저장소(104)는 단일 물리적 디바이스일 수 있다. 다른 실시예들에서, 데이터 저장소(104)는 유선 또는 무선 통신을 통해 서로 통신할 수 있는 둘 이상의 물리적 디바이스들을 이용하여 구현될 수 있다. 전술한 바와 같이, 데이터 저장소(104)는 컴퓨터 판독가능한 프로그램 명령어들(106) 및 데이터(107)를 포함할 수 있다. 데이터(107)는 다른 가능한 것들 중에서도 구성 데이터, 센서 데이터 및/또는 진단 데이터와 같은 임의의 타입의 데이터일 수 있다.
제어기(108)는 기계적 구성요소들(110), 센서(들)(112), 전원(들)(114), 전기적 구성요소들(116), 제어 시스템(118), 통신 링크(들)(120) 및/또는 차량 시스템(100)의 사용자의 임의의 조합 사이에서 (아마도 다른 작업들 중에서) 인터페이싱하도록 구성된 하나 이상의 전기적 회로, 디지털 로직의 유닛, 컴퓨터 칩 및/또는 마이크로프로세서를 포함할 수 있다. 일부 실시예들에서, 제어기(108)는 차량 시스템(100)의 하나 이상의 서브시스템과 함께 특정 동작들을 수행하기 위한 특수 목적의 내장형 디바이스일 수 있다.
제어 시스템(118)은 차량 시스템(100)의 동작 조건들을 모니터링하고 물리적으로 변화시킬 수 있다. 그렇게 함으로써, 제어 시스템(118)은 기계적 구성요소들(110) 및/또는 전기적 구성요소들(116) 사이와 같이 차량 시스템(100)의 부분들 사이의 링크로서 기능할 수 있다. 일부 경우들에서, 제어 시스템(118)은 차량 시스템(100)과 다른 컴퓨팅 디바이스 사이의 인터페이스로서 기능할 수 있다. 또한, 제어 시스템(118)은 차량 시스템(100)과 사용자 사이의 인터페이스로서 기능할 수 있다. 예를 들어, 제어 시스템(118)은 조이스틱, 버튼들 및/또는 포트들 등을 포함하는, 차량 시스템(100)과 통신하기 위한 다양한 구성요소들을 포함할 수 있다. 전술한 예시적인 인터페이스들 및 통신들은 유선 또는 무선 연결, 또는 둘 다를 통해 구현될 수 있다. 제어 시스템(118)은 또한 차량 시스템(100)에 대한 다른 동작들을 수행할 수 있다.
일부 구현예들에서, 차량 시스템(100)의 제어 시스템(118)은 또한 정보를 전송 및/또는 수신하도록 구성된 통신 링크(들)(120)를 포함할 수 있다. 통신 링크(들)(120)는 차량 시스템(100)의 다양한 구성요소들의 상태를 나타내는 데이터를 전송할 수 있다. 예를 들어, 센서(들)(112)에 의해 판독된 정보는 통신 링크(들)(120)를 통해 별도의 디바이스로 전송될 수 있다. 전원(들)(114), 기계적 구성요소들(110), 전기적 구성요소들(116), 프로세서(들)(102), 데이터 저장소(104) 및/또는 제어기(108)의 무결성 또는 건전성을 나타내는 다른 진단 정보는 통신 링크(들)(120)를 통해 외부 통신 디바이스로 전송될 수 있다.
일부 구현예들에서, 차량 시스템(100)은 프로세서(들)(102)에 의해 이 후에 처리될 정보를 통신 링크(들)(120)에서 수신할 수 있다. 수신된 정보는 프로그램 명령어들(106)의 실행 동안 프로세서(들)(102)에 의해 액세스가능한 데이터를 나타낼 수 있다. 또한, 수신된 정보는 기계적 구성요소들(114) 또는 전기적 구성요소들(116)의 거동에 영향을 미칠 수 있는 제어기(들)(108)의 양상들을 변경시킬 수 있다. 일부 경우들에서, 수신된 정보는 특정 단편의 정보(예를 들어, 차량 시스템(100)의 하나 이상의 구성요소의 동작 상태)를 요청하는 질의를 나타낼 수 있다. 프로세서(들)(102)는 후속하여 특정 단편의 정보를 통신 링크(들)(120)에 다시 전송할 수 있다.
일부 경우들에서, 통신 링크(들)(120)는 유선 연결을 포함할 수 있다. 차량 시스템(100)은 통신 링크(들)(120)를 외부 디바이스에 인터페이싱하기 위한 하나 이상의 포트를 포함할 수 있다. 통신 링크(들)(120)는 유선 연결에 추가하여 또는 대안적으로 무선 연결을 포함할 수 있다. 일부 예시적인 무선 연결들은 CDMA, EVDO, GSM/GPRS 또는 WiMAX 또는 LTE와 같은 4G 원격 통신과 같은 셀룰러 연결을 이용할 수 있다. 대안적으로 또는 추가적으로, 무선 연결은 Wi-Fi 연결을 이용하여 데이터를 무선 로컬 영역 네트워크(WLAN)에 전송할 수 있다. 일부 구현예들에서, 무선 연결은 또한 적외선 링크, 블루투스 또는 근거리 통신(NFC) 디바이스를 통해 통신할 수 있다.
동작 중에, 제어 시스템(118)은 유선 또는 무선 연결들을 통해 차량 시스템(100)의 다른 시스템들과 통신할 수 있고, 차량의 한 명 이상의 사용자 또는 운전자와 통신하도록 추가로 구성될 수 있다. 하나의 가능한 예시로서, 제어 시스템(118)은 팔레트를 창고의 제1 위치로부터 창고의 제2 위치로 이동시키라는 지시를 나타내는 입력을 (예를 들어, 사용자 또는 다른 차량으로부터) 수신할 수 있다. 제어 시스템(118)에의 입력은 통신 링크(들)(120)를 통해 수신될 수 있다.
이 입력에 기반하여, 제어 시스템(118)은 차량 시스템(100)이 센서들(112)을 이용하여 창고의 환경을 분석함으로써 팔레트를 찾아 내고 이어서 기계적 구성요소들(110)을 이용하여 팔레트를 들어 올려서 이동시키게 하는 동작들을 수행할 수 있다.
제어 시스템(118)의 동작들은 프로세서(들)(102)에 의해 수행될 수 있다. 대안적으로, 이러한 동작들은 제어기(108), 또는 프로세서(들)(102)와 제어기(108)의 조합에 의해 수행될 수 있다. 일부 실시예들에서, 제어 시스템(118)은 차량 시스템(100) 이외의 디바이스 상에 전체적으로 또는 부분적으로 상주할 수 있고, 이에 따라 원격으로 차량 시스템(100)을 적어도 부분적으로 제어할 수 있다. 통신 링크(들)(120)는 원격 통신을 수행하기 위해 적어도 부분적으로 이용될 수 있다.
기계적 구성요소들(110)은 차량 시스템(100)이 물리적 동작들을 수행하게 할 수 있는 차량 시스템(100)의 하드웨어를 나타낸다. 몇 가지 예들로서, 차량 시스템(100)은 로봇식 팔(들), 휠(들), 트랙(들), 연결 장치(들) 및/또는 엔드 이펙터(들)와 같은 물리적 부재들을 포함할 수 있다. 차량 시스템(100)의 물리적 부재들 또는 다른 부품들은 서로에 대해 물리적 부재들을 이동시키도록 배열된 모터들 및 액추에이터들을 추가로 포함할 수 있다. 차량 시스템(100)은 또한 제어 시스템(118) 및/또는 다른 구성요소들을 수용하기 위한 하나 이상의 구조화된 본체를 포함할 수 있으며, 다른 타입들의 기계적 구성요소들을 추가로 포함할 수 있다. 주어진 로봇에서 이용되는 특정 기계적 구성요소들(110)은 로봇의 설계에 따라 달라질 수 있으며, 또한 로봇이 수행하도록 구성될 수 있는 동작들 및/또는 작업들에 기반할 수 있다.
일부 예들에서, 기계적 구성요소들(110)은 하나 이상의 이동식 구성요소를 포함할 수 있다. 차량 시스템(100)은 사용자 및/또는 다른 로봇의 보조를 수반할 수 있는 이러한 이동식 구성요소들을 추가 및/또는 제거하도록 구성될 수 있다. 예를 들어, 차량 시스템(100)은 이동식 팔들, 연결 장치들 및/또는 엔드 이펙터들로 구성될 수 있으며, 차량(100)이 수행할 것으로 예상되거나 플래닝된 작업에 기반하여 이들 부재들은 필요하거나 원하는 경우 교체되거나 변경될 수 있다. 일부 실시예들에서, 차량 시스템(100)은 하나 이상의 이동식 및/또는 교체가능한 배터리 유닛 또는 센서를 포함할 수 있다. 다른 타입들의 이동식 구성요소들이 일부 실시예들에서 포함될 수 있다.
차량 시스템(100)은 차량 시스템(100)의 양상들을 감지하도록 배열된 센서(들)(112)를 포함할 수 있다. 센서(들)(112)는 다른 가능한 것들 중에서도 하나 이상의 힘 센서, 토크 센서, 속도 센서, 가속도 센서, 위치 센서, 근접 센서, 움직임 센서, 로케이션 센서, 하중 센서, 온도 센서, 터치 센서, 깊이 센서, 초음파 거리 센서, 적외선 센서, 오브젝트 센서 및/또는 카메라들(예를 들어, 깊이 카메라 및/또는 스테레오 카메라)을 포함할 수 있다. 일부 예들에서, 차량 시스템(100)은 로봇으로부터 물리적으로 분리된 센서들(예컨대, 다른 로봇들 상에 위치되거나 로봇이 동작하는 환경 내에 위치되는 센서들)로부터 센서 데이터를 수신하도록 구성될 수 있다. 일부 실시예들에서, 센서(들)(112)의 일부는 제한된 시야를 가질 수 있다.
센서(들)(112)는 (아마도 데이터(107)에 의해) 프로세서(들)(102)에게 센서 데이터를 제공하여 차량 시스템(100)의 그 환경과의 상호작용뿐만 아니라 차량 시스템(100)의 동작의 모니터링을 허용할 수 있다. 센서 데이터는 제어 시스템(118)에 의한 기계적 구성요소들(110) 및 전기적 구성요소들(116)의 활성화, 이동 및 비활성화에 대한 다양한 인자들의 평가에 이용될 수 있다. 예를 들어, 센서(들)(112)는 환경의 지형, 인근 오브젝트들(예를 들어, 팔레트들, 환경 랜드마크들)의 위치 및/또는 정체에 대응하는 데이터를 캡처할 수 있으며, 이는 환경 인식 및 운행을 지원할 수 있다. 예시적인 구성에서, 센서(들)(112)는 RADAR(예를 들어, 장거리 오브젝트 검출, 거리 결정 및/또는 속력 결정용), LIDAR(예를 들어, 근거리 오브젝트 검출, 거리 결정 및/또는 속력 결정용), SONAR(예를 들어, 수중 오브젝트 검출, 거리 결정 및/또는 속력 결정용), VICON®(예를 들어, 움직임 캡처용), 하나 이상의 카메라(예를 들어, 3D 비전용 입체 카메라), GPS 송수신기, 및/또는 차량 시스템(100)이 동작하는 환경의 정보를 캡처하기 위한 다른 센서들을 포함할 수 있다. 센서(들)(112)는 실시간으로 환경을 모니터링하고, 장애물들, 지형 요소들, 기상 조건들, 온도 및/또는 환경의 다른 양상들을 검출할 수 있다.
또한, 차량 시스템(100)은 차량 시스템(100)의 다양한 구성요소들의 상태를 모니터링할 수 있는 센서(들)(112)를 포함하는, 차량 시스템(100)의 상태를 나타내는 정보를 수신하도록 구성된 센서(들)(112)를 포함할 수 있다. 센서(들)(112)는 차량 시스템(100)의 시스템들의 활동을 측정하고, 휠들, 연결 장치들, 액추에이터들, 엔드 이펙터들, 및/또는 차량 시스템(100)의 다른 기계적 및/또는 전기적 피처들의 동작과 같은, 차량 시스템(100)의 다양한 피처들의 동작에 기반하여 정보를 수신할 수 있다. 센서(들)(112)에 의해 제공되는 데이터는 제어 시스템(118)이 차량 시스템(100)의 구성요소들의 전체 동작을 모니터링할 뿐만 아니라 동작 중의 에러들을 결정할 수 있게 한다.
일 예로서, 차량 시스템(100)은 차량의 플래닝된 경로를 따라 장애물들을 검출하고, 차량(100)의 환경 내의 환경 랜드마크들을 식별하며, 팔레트들 및 박스들과 같은 관심 오브젝트들을 찾기 위해 스테레오 카메라를 이용하여 환경의 부분들을 스캐닝할 수 있다. 스테레오 카메라는 제한된 시야를 가질 수 있다. 기계적 구성요소들(110) 및 전기적 구성요소들(116)은 환경의 상이한 부분들에서 스테레오 카메라의 시야를 향하게 하기 위해 궤적을 따라 스테레오 카메라를 이동시키도록 협력하여 작동할 수 있다.
다른 예로서, 센서(들)(112)는 하나 이상의 속도 및/또는 가속도 센서를 포함할 수 있다. 센서(들)(112)는 선속도와 각속도 모두 및/또는 가속도를 측정할 수 있다. 예를 들어, 센서(들)(112)는 3축 가속도계, 3축 자이로스코프 및 3축 자력계를 갖는 관성 측정 유닛(IMU)을 포함할 수 있다. IMU는 중력 벡터와 관련하여 세계 권역에서 속도와 가속도를 감지할 수 있다. IMU에 의해 감지된 속도 및 가속도는 그 다음에 차량 시스템(100) 내의 IMU의 위치 및 차량 시스템(100)의 운동역학에 기반하여 차량 시스템(100)의 속도 및 가속도로 변환될 수 있다.
차량 시스템(100)은 본 명세서에서 설명되고 논의되지 않은 다른 타입들의 센서들을 포함할 수 있다. 추가적으로 또는 대안적으로, 차량 시스템(100)은 본 명세서에 열거되지 않은 목적들을 위해 특정 센서들을 이용할 수 있다.
차량 시스템(100)은 또한 차량 시스템(100)의 다양한 구성요소들에게 전력을 공급하도록 구성된 하나 이상의 전원(들)(114)을 포함할 수 있다. 다른 가능한 전력 시스템들 중에서, 차량 시스템(100)은 유압 시스템, 전기 시스템, 배터리들 및/또는 다른 타입들의 전력 시스템들을 포함할 수 있다. 예시적인 예로서, 차량 시스템(100)은 차량 시스템(100)의 구성요소들에게 전하를 제공하도록 구성된 하나 이상의 배터리를 포함할 수 있다. 기계적 구성요소들(110) 및/또는 전기적 구성요소들(116)의 일부는 각각 상이한 전원에 연결될 수 있고, 동일한 전원에 의해 전력을 공급 받거나 복수의 전원들에 의해 전력을 공급 받을 수 있다.
전력 또는 가솔린 엔진과 같이 차량 시스템(100)에 전력을 공급하기 위해 임의의 타입의 전원이 이용될 수 있다. 추가적으로 또는 대안적으로, 차량 시스템(100)은 유체 동력을 이용하여 기계적 구성요소들(110)에게 전력을 제공하도록 구성된 유압 시스템을 포함할 수 있다. 차량 시스템(100)의 구성요소들은 예를 들어 유압 시스템을 통해 다양한 유압 모터들 및 유압 실린더들에 전달되는 유압 유체에 기반하여 동작할 수 있다. 일 예에서, 유압 유체는 지게차, 포크 트럭 및/또는 팔레트 잭의 포크들을 작동시키는데 이용될 수 있다. 유압 시스템은 튜브들, 가요성 호스들 또는 차량 시스템(100)의 구성요소들 사이의 다른 링크들을 통해 가압된 유압 유체에 의해 유압 동력을 전달할 수 있다. 전원(들)(114)은 외부 전원으로의 유선 연결들, 무선 충전, 연소 또는 다른 예들과 같은 다양한 타입들의 충전을 이용하여 충전될 수 있다.
전기적 구성요소들(116)은 전하 또는 전기 신호들을 처리, 전달 및/또는 제공할 수 있는 다양한 메커니즘들을 포함할 수 있다. 가능한 예들 중에서, 전기적 구성요소들(116)은 차량 시스템(100)의 동작들을 가능하게 하는 전기 와이어들, 회로 및/또는 무선 통신 전송기들 및 수신기들을 포함할 수 있다. 전기적 구성요소들(116)은 기계적 구성요소들(110)과 상호연동하여 차량 시스템(100)이 다양한 동작들을 수행하게 할 수 있다. 전기적 구성요소들(116)은 예를 들어 전원(들)(114)으로부터 다양한 기계적 구성요소들(110)에 전력을 제공하도록 구성될 수 있다. 또한, 차량 시스템(100)은 전기 모터들을 포함할 수 있다. 전기적 구성요소들(116)의 다른 예들이 또한 존재할 수 있다.
도 1에 도시되지는 않았지만, 차량 시스템(100)은 차량 시스템(100)의 구성요소들에 연결되거나 이들을 수용할 수 있는 섀시 및/또는 운전실을 포함할 수 있다. 섀시 및/또는 캐빈의 구조는 예들 내에서 다를 수 있으며 주어진 차량이 수행하도록 설계되었을 수 있는 특정 동작들에 또한 의존할 수 있다. 예를 들어, 크고 무거운 짐들을 운반하도록 개발된 차량에는 짐을 배치할 수 있는 넓고 단단한 섀시가 있을 수 있다. 유사하게, 고속으로 가벼운 짐들을 운반하도록 설계된 차량은 상당한 무게를 가지지 않는 좁고 작은 섀시를 가질 수 있다. 또한, 섀시, 캐빈 및/또는 다른 구성요소들은 금속들 또는 플라스틱들과 같은 다양한 타입들의 물질들을 이용하여 개발될 수 있다. 다른 예들에서, 차량은 상이한 구조를 갖거나 다양한 타입들의 물질들로 제조된 섀시를 가질 수 있다.
섀시, 캐빈 및/또는 다른 구성요소들은 센서(들)(112)를 포함하거나 운반할 수 있다. 이들 센서들은 차량 시스템(100) 상의 다양한 위치들, 예를 들어 섀시의 상부에 배치되어 센서(들)(112)에게 높은 유리한 지점을 제공할 수 있다.
차량 시스템(100)은 운송될 화물 타입과 같은 짐을 운반할 수 있다. 짐은 또한 차량 시스템(100)이 이용할 수 있는 외부 배터리들 또는 다른 타입들의 전원들(예를 들어, 태양 전지판들)을 나타낼 수 있다. 짐을 운반하는 것은 차량 시스템(100)이 구성될 수 있는 하나의 예시적인 이용을 나타내지만, 차량 시스템(100)은 또한 다른 동작들을 수행하도록 구성될 수 있다.
Ⅲ. 예시적인 창고 차량군
도 2a는 예시적인 실시예에 따른, 창고 세팅 내의 차량들 및 로봇식 디바이스들의 군을 도시한다. 보다 구체적으로, 상이한 타입들의 차량들 및 로봇식 디바이스들은 창고 환경 내의 아이템들, 오브젝트들 또는 박스들의 처리와 관련된 작업들을 수행하기 위해 협력하도록 제어될 수 있는 이종 로봇식 차량군(200)을 형성할 수 있다. 상이한 차량들 및 로봇식 디바이스들의 특정 예시적인 타입들 및 수들이 예시적인 목적들을 위해 본 명세서에 도시되지만, 로봇식 차량군(200)은 더 많거나 적은 차량들 및 로봇식 디바이스들을 이용할 수 있고, 본 명세서에 도시된 특정 타입들을 생략할 수 있으며, 명시적으로 도시되지 않은 다른 타입들의 차량들 및 로봇식 디바이스들을 또한 포함할 수 있다. 본 명세서에서 설명된 동작들은 본 명세서에 도시되거나 다른 방식으로 고려되는 임의의 차량에 의해 또는 그에 대해 수행될 수 있다. 또한, 창고 환경은 특정 타입들의 고정 구성요소들 및 구조물들을 갖는 것으로 본 명세서에 도시되지만, 다른 예들에서는 다른 타입들, 수들 및 배치들의 고정 구성요소들 및 구조물들이 또한 이용될 수 있다.
로봇식 차량군(200) 내에 도시된 하나의 예시적인 타입의 차량은, 개개의 패키지들, 케이스들, 또는 토트들을 창고 내에서 하나의 위치로부터 다른 위치로 운반하도록 기능할 수 있는 휠들을 갖는 비교적 작은 차량일 수 있는 자율 유도 차량(AGV)(212)이다. 다른 예시적인 타입의 차량은 자율 포크 트럭(214), 즉 박스들의 팔레트들을 운반하고/하거나 (예를 들어, 저장을 위해 팔레트들을 랙 위에 배치하기 위해) 박스들의 팔레트들을 들어 올리는데 이용될 수 있는 지게차를 갖는 이동 디바이스이다. 추가의 예시적인 타입의 로봇식 차량/디바이스는 로봇식 트럭 로더/언로더(216), 즉 트럭들 또는 다른 차량들에 대한 박스들의 싣고/내리기를 용이하게 하기 위해 로봇식 조작기뿐만 아니라 광학 센서들과 같은 다른 구성요소들을 갖는 이동 디바이스이다. 예를 들어, 로봇식 트럭 언로더(216)는 창고에 인접하여 주차될 수 있는 배달 트럭(218) 위에 박스들을 싣는데 이용될 수 있다. 일부 예들에서, (예를 들어, 패키지들을 다른 창고에 배달하기 위한) 배달 트럭(218)의 이동은 또한 차량군 내의 로봇식 디바이스들과 조정될 수 있다.
본 명세서에 예시된 것들 이외의 다른 타입들의 차량들 및 이동 로봇식 디바이스들이 또한 또는 대신에 포함될 수 있다. 예를 들어, 차량군(200)은 팔레트 잭 및/또는 포크 트럭/팔레트 잭의 혼성과 같은 포크 트럭(214)의 변형들을 포함할 수 있다. 일부 예들에서, 하나 이상의 차량 및/또는 로봇식 디바이스는 지면에 있는 휠들 외에 상이한 운반 모드들을 이용할 수 있다. 예를 들어, 하나 이상의 로봇식 차량/디바이스는 항공기(예를 들어, 쿼드콥터들)일 수 있으며, 오브젝트들을 이동시키거나 환경의 센서 데이터를 수집하는 것과 같은 작업들에 이용될 수 있다.
추가 예들에서, 로봇식 차량군(200)은 또한 창고 내에 배치될 수 있는 다양한 고정 구성요소들을 포함할 수 있다. 일부 예들에서, 하나 이상의 고정 로봇식 디바이스가 박스들을 이동시키거나 달리 처리하는데 이용될 수 있다. 예를 들어, 페디스털 로봇(pedestal robot)(222)은 창고 내의 1층에 고정되는 페디스털 상에 올려진 로봇식 팔을 포함할 수 있다. 페디스털 로봇(222)은 다른 로봇들과 차량들 사이에 박스들을 분배하고/하거나 박스들의 팔레트들을 쌓고 빼내도록 제어될 수 있다. 예를 들어, 페디스털 로봇(222)은 근처의 팔레트들(240)로부터 박스들을 들어 올려 이동시키고, 박스들을 창고 내의 다른 위치들로 운반하기 위해 개별 AGV들(212)에 분배할 수 있다.
추가 예들에서, 로봇식 차량군(200)은 창고 공간 내에 배치된 추가의 고정 구성요소들을 이용할 수 있다. 예를 들어, 조밀 저장 랙들(224)은 창고 내에 팔레트들 및/또는 오브젝트들을 저장하는데 이용될 수 있다. 저장 랙들(224)은 자율 포크 트럭(214)과 같은 차량군 내의 하나 이상의 차량 및/또는 로봇식 디바이스와의 상호작용을 용이하게 하도록 설계 및 배치될 수 있다. 추가 예들에서, 특정 지면 공간이 팔레트들 또는 박스들의 저장을 위해 또한 또는 대신 선택되어 이용될 수 있다. 예를 들어, 팔레트들이 하나 이상의 차량 및/또는 로봇식 디바이스에 의해 들어 올려지거나, 분배되거나 또는 달리 처리되게 하도록 팔레트들(230)이 특정 기간 동안 선택된 위치들에서 창고 환경 내에 배치될 수 있다.
도 2b는 예시적인 실시예에 따른 로봇식 창고 차량군(200)의 구성요소들을 도시하는 기능 블록도이다. 로봇식 차량군(200)은 AGV들(212), 자율 포크 트럭들(214), 로봇식 트럭 로더들/언로더들(216) 및 배달 트럭들(218)과 같은 하나 이상의 다양한 이동 구성요소들을 포함할 수 있다. 로봇식 차량군(200)은 페디스털 로봇들(222), 조밀 저장 컨테이너들(224) 및 배터리 교환/충전소들(226)과 같은, 창고 또는 다른 환경 내에 배치된 하나 이상의 고정 구성요소를 추가로 포함할 수 있다. 추가 예들에서, 도 2b에 도시된 구성요소들의 상이한 수들 및 타입들이 차량군 내에 포함될 수 있고, 특정 타입들이 생략될 수 있으며, 추가의 기능적 및/또는 물리적 구성요소들이 또한 도 2a 및 도 2b에 의해 예시된 예들에 추가될 수 있다. 별도의 구성요소들의 동작들을 조정하기 위해, 원격 클라우드 기반 서버 시스템과 같은 글로벌 제어 시스템(250)이 시스템 구성요소들 중 일부 또는 전부 및/또는 개별 구성요소들의 별도의 로컬 제어 시스템들과 (예를 들어, 무선 통신을 통해) 통신할 수 있다.
일부 예들에서, 글로벌 제어 시스템(250)은 차량군(200) 내의 상이한 로봇식 디바이스들에게 작업들을 할당하는 중앙 플래닝 시스템을 포함할 수 있다. 중앙 플래닝 시스템은 어떤 디바이스들이 어떤 시간에 어떤 작업들을 완료할 것인지를 결정하기 위해 다양한 스케줄링 알고리즘들을 이용할 수 있다. 예를 들어, 개별 로봇들이 상이한 작업들에 입찰하는 경매 타입 시스템이 이용될 수 있으며, 중앙 플래닝 시스템은 전체 비용을 최소화하도록 작업들을 로봇들에게 할당할 수 있다. 추가 예들에서, 중앙 플래닝 시스템은 시간, 공간 또는 에너지 이용과 같은 하나 이상의 상이한 자원에 대해 최적화할 수 있다. 추가 예들에서, 플래닝 또는 스케줄링 시스템은 또한 박스 집기, 포장 또는 저장의 기하학 및 물리학의 특정 양상들을 통합할 수 있다.
플래닝 제어는 또한 개별 시스템 구성요소들에 걸쳐 분산될 수 있다. 예를 들어, 글로벌 제어 시스템(250)은 글로벌 시스템 플랜에 따라 명령들을 내릴 수 있고, 개별 시스템 구성요소들은 또한 별도의 로컬 플랜들에 따라 동작할 수 있다. 또한, 상이한 상세 레벨들이 글로벌 플랜에 포함될 수 있으며, 개별 로봇식 디바이스들이 로컬로 플래닝하도록 다른 양상들이 남겨질 수 있다. 예를 들어, 이동 로봇식 디바이스들은 글로벌 플래너에 의해 타겟 목적지들을 할당 받을 수 있지만, 이들 타겟 목적지들에 도달하기 위한 전체 경로들은 로컬로 플래닝되거나 변경될 수 있다. 다른 예에서, 글로벌 플래너는 차량들 및 로봇식 디바이스들에게 미리결정된 경로들을 제공할 수 있다. 차량들 및 로봇식 디바이스는 미리결정된 경로들을 따라 속력을 제어할 수 있고 로컬 센서 데이터에 기반하여 미리결정된 경로들을 변경할 수 있다.
추가 예들에서, 중앙 플래닝 시스템은 로봇식 차량군(200) 내의 로봇들의 기능들을 조정하기 위해 개별 차량들 및/또는 로봇식 디바이스들 상의 로컬 비전과 함께 이용될 수 있다. 예를 들어, 중앙 플래닝 시스템은 차량들 및/또는 로봇들을 그들이 가야 할 곳에 비교적 가깝게 하는데 이용될 수 있다. 그러나, 차량들 및/또는 로봇들을 레일들에 볼트로 고정하거나 다른 측정된 구성요소들을 이용하여 차량/로봇 위치들을 정밀하게 제어하지 않는 한, 중앙 플래닝 시스템이 밀리미터 정밀도로 차량들 및/또는 로봇들을 통솔하는 것은 어려울 수 있다. 따라서, 개별 차량들 및/또는 로봇식 디바이스들에 대한 로컬 비전 및 플래닝을 이용하여 상이한 차량들 및/또는 로봇식 디바이스들 사이의 탄력성을 허용할 수 있다. 일반적인 플래너를 이용하여 차량/로봇을 타겟 위치에 가깝게 할 수 있으며, 이 시점에서 차량/로봇의 로컬 비전이 인계될 수 있다. 일부 예들에서, 대부분의 차량/로봇식 기능들은 차량들/로봇들을 타겟 위치들에 비교적 가깝게 하도록 위치 제어될 수 있으며, 이어서 로컬 제어에 필요할 때 비전 및 핸드셰이크들이 이용될 수 있다.
추가 예들에서, 시각적 핸드셰이크들은 2개의 차량/로봇이 AR 태그 또는 다른 특성들에 의해 서로 식별할 수 있게 하고, 차량군(100) 내에서 협력 동작들을 수행하게 할 수 있다. 추가 예들에서, 아이템들(예를 들어, 출하될 패키지들)은 또한 또는 대신에 시각적 태그들을 구비할 수 있으며, 이들 태그들은 로컬 비전 제어를 이용하여 아이템들에 대한 동작들을 수행하기 위해 차량들 및/또는 로봇식 디바이스들에 의해 이용될 수 있다. 특히, 태그들은 차량들 및/또는 로봇식 디바이스들에 의한 아이템들의 조작을 용이하게 하는데 이용될 수 있다. 예를 들어, 팔레트 상의 특정 위치들의 하나 이상의 태그를 이용하여 지게차에게 팔레트를 어디에 또는 어떻게 들어 올릴지를 알릴 수 있다.
추가 예들에서, 고정 및/또는 이동 구성요소들에 대한 전개 및/또는 플래닝 전략들이 시간이 지남에 따라 최적화될 수 있다. 예를 들어, 클라우드 기반 서버 시스템은 차량군 내의 개별 차량들/로봇들 및/또는 외부 소스들로부터의 데이터 및 정보를 통합할 수 있다. 그 후, 차량군이 더 적은 공간, 더 적은 시간, 더 적은 전력, 더 적은 전기를 이용하거나 다른 변수들에 대해 최적화할 수 있게 하도록 시간이 지남에 따라 전략들을 정교화할 수 있다. 일부 예들에서, 최적화들은 가능하게는 로봇식 차량군들을 갖는 다른 창고들 및/또는 전통적인 창고들을 포함한, 복수의 창고들에 걸칠 수 있다. 예를 들어, 글로벌 제어 시스템(250)은 배달 차량들에 대한 정보 및 시설들 간의 통행 시간들을 중앙 플래닝에 통합할 수 있다.
일부 예들에서, 중앙 플래닝 시스템은 로봇이 고착되거나 패키지들이 어떤 위치에 떨어져 유실될 때와 같이 때때로 실패할 수 있다. 따라서, 로컬 로봇 비전은 중앙 플래너가 실패하는 사례들을 처리하기 위해 중복성을 삽입함으로써 강건성을 또한 제공할 수 있다. 예를 들어, 자동 팔레트 잭이 오브젝트를 통과하여 식별함에 따라, 팔레트 잭은 원격 클라우드 기반 서버 시스템까지 정보를 보낼 수 있다. 이러한 정보는 중앙 플래닝에서 에러를 수정하거나, 로봇식 디바이스들의 위치파악을 돕거나, 유실된 오브젝트들을 식별하는데 이용될 수 있다.
추가 예들에서, 중앙 플래닝 시스템은 로봇식 차량군(200), 및 로봇식 디바이스들에 의해 처리되는 오브젝트들을 포함하는 물리적 환경의 맵을 동적으로 업데이트할 수 있다. 일부 예들에서, 맵은 동적 오브젝트들(예를 들어, 이동 로봇들 및 로봇들에 의해 이동되는 패키지)에 관한 정보로 지속적으로 업데이트될 수 있다. 추가 예들에서, 동적 맵은 창고 내의 (또는 복수의 창고들에 걸치는) 구성요소들의 현재 구성 및/또는 배치에 대한 정보뿐만 아니라 가까운 기간 내에 예상되는 것에 대한 정보를 포함할 수 있다. 예를 들어, 맵은 이동 로봇들의 현재 위치들 및 향후의 로봇들의 예상 위치들을 나타낼 수 있으며, 이는 로봇들 사이의 활동을 조정하는데 이용될 수 있다. 맵은 또한 처리되는 아이템들의 현재 위치들은 물론, 예상되는 향후의 아이템 위치들(예를 들어, 아이템이 현재 어디에 있는지, 그리고 아이템이 언제 출하될 것으로 예상되는지)도 나타낼 수 있다. 이러한 맵은 창고의 환경을 횡단하기 위해 차량들 및 로봇식 디바이스들이 따라갈 경로들을 결정하는데 이용될 수 있다.
추가 예들에서, 로봇들 중 일부 또는 전부는 프로세스 내의 상이한 시점들에서 오브젝트들 상의 라벨들을 스캐닝할 수 있다. 스캔들은 개별 구성요소들 또는 특정 아이템들에 부착되어 구성요소들 및 아이템들의 발견 또는 추적을 용이하게 할 수 있는 시각적 태그들을 찾는데 이용될 수 있다. 이러한 스캐닝은 아이템들이 차량들 및 로봇들에 의해 조작되거나 운반될 때 끊임없이 주위를 이동하는 아이템들의 자취를 생성할 수 있다. 잠재적인 이득은 공급자 및 소비자 양측에서의 투명성의 향상일 수 있다. 공급자 측에서는 재고품의 현재 위치에 대한 정보를 이용하여 과도한 재고를 방지하고/하거나 아이템들 또는 아이템들의 팔레트들을 다른 위치들 또는 창고들로 이동시켜 수요를 예측할 수 있다. 소비자 측에서는 특정 아이템들의 현재 위치들에 대한 정보를 이용하여 특정 패키지가 언제 배달될지를 향상된 정확도로 결정할 수 있다.
일부 예들에서, 로봇식 차량군(200) 내의 이동 구성요소들(210)의 일부 또는 전부는 복수의 배터리 충전기들을 구비한 배터리 교환소(226)로부터 충전된 배터리들을 주기적으로 받을 수 있다. 특히, 배터리 교환소(226)는 이동 로봇의 오래된 배터리들을 재충전된 배터리들로 교체할 수 있으며, 이는 로봇들이 앉아서 배터리들이 충전될 때까지 대기하는 것을 방지할 수 있다. 배터리 교환소(226)는 로봇식 팔과 같은 로봇식 조작기를 구비할 수 있다. 로봇식 조작기는 개별 이동 로봇에서 배터리들을 제거하고 배터리들을 이용가능한 배터리 충전기들에 부착할 수 있다. 그 다음, 로봇식 조작기는 배터리 교환소(226)에 위치한 충전된 배터리들을 이동 로봇으로 이동시켜, 제거된 배터리들을 교체할 수 있다. 예를 들어, 약한 배터리를 갖는 AGV(212)는 배터리 교환소(226)로 이동하도록 제어될 수 있고, 여기서 로봇식 팔이 AGV(212)로부터 배터리를 꺼내고, 배터리를 충전기에 넣고, AGV(212)에 새로운 배터리를 제공한다.
도 3a, 도 3b 및 도 3c는 로봇식 창고 차량군 내에 포함될 수 있는 차량들의 몇 가지 예들을 도시한다. 본 명세서에서 예시된 것들과 다른 형태의 로봇식 디바이스들뿐만 아니라 다른 타입들의 로봇식 디바이스들이 또한 포함될 수 있다.
도 3a는 예시적인 실시예에 따른 로봇식 트럭 언로더(300)를 도시한다. 로봇식 트럭 언로더(300)는 도 1에 도시된 바와 같은 차량 시스템(100)의 예일 수 있다. 일부 예들에서, 로봇식 트럭 언로더는 하나 이상의 센서, 하나 이상의 컴퓨터, 및 하나 이상의 로봇식 팔을 포함할 수 있다. 센서들은 시각적 데이터 및/또는 3차원(3D) 깊이 정보를 캡처하기 위해 하나 이상의 오브젝트를 포함하는 환경을 스캐닝하도록 센서 궤적을 따라 이동할 수 있다. 그 다음에, 스캔들로부터의 데이터는 디지털 환경 재구성을 제공하기 위해 더 큰 영역들의 표현으로 통합될 수 있다. 추가 예들에서, 재구성된 환경은 그 다음에 들어 올리기 위한 오브젝트들을 식별하고, 오브젝트들에 대한 집는 위치들을 결정하고/하거나 하나 이상의 로봇식 팔 및/또는 이동 베이스에 대한 충돌 회피 궤적들을 플래닝하는데 이용될 수 있다.
로봇식 트럭 언로더(300)는 로봇식 팔(302)을 포함할 수 있으며, 로봇식 팔(302)은 환경 내의 오브젝트들을 파지하기 위한 파지 구성요소(304)를 구비한다. 로봇식 팔(302)은 트럭들 또는 다른 컨테이너들에 싣거나 그로부터 내릴 박스들을 집어서 올려 놓기 위해 파지 구성요소(304)를 이용할 수 있다. 트럭 언로더(300)는 또한 이동을 위한 휠들(314)을 갖는 이동가능한 카트(312)를 포함할 수 있다. 휠들(314)은 카트(312)가 2 자유도로 이동할 수 있게 하는 홀로노믹 휠들일 수 있다. 또한, 전방 컨베이어 벨트(310) 주위의 랩이 홀로노믹 카트(312)에 포함될 수 있다. 일부 예들에서, 전방 컨베이어 벨트 주위의 랩은 트럭 로더(300)가 파지기(304)를 회전시킬 필요 없이 박스들을 트럭 컨테이너 또는 팔레트로부터 내리거나 그에게 싣을 수 있게 할 수 있다.
추가 예들에서, 로봇식 트럭 언로더(300)의 감지 시스템은 로봇식 팔(302)이 이동함에 따라 환경에 관한 정보를 감지하는 2차원(2D) 센서들 및/또는 3D 깊이 센서들일 수 있는, 센서(306) 및 센서(308)와 같은, 로봇식 팔(302)에 부착된 하나 이상의 센서를 이용할 수 있다. 일부 예들에서, 센서들(306 및/또는 308)은 제한된 시야를 갖는 비전 센서들(예를 들어, 스테레오 카메라들)일 수 있다. 로봇식 팔(302)은 센서(306)에 의해 관측가능한 환경의 부분을 제어하기 위해 센서(306)를 이동시키도록 제어될 수 있다.
감지 시스템은 박스들을 효율적으로 집어서 이동시키기 위해 제어 시스템(예컨대, 움직임 플래닝 소프트웨어(motion planning software)를 실행하는 컴퓨터)에 의해 이용될 수 있는 환경에 관한 정보를 결정할 수 있다. 제어 시스템은 디바이스 상에 위치될 수 있거나 디바이스와 원격 통신할 수 있다. 추가 예들에서, 전방 운행 센서(316) 및 후방 운행 센서(318)와 같이 이동 베이스 상에 고정된 마운트들을 갖는 하나 이상의 2D 또는 3D 센서, 및 센서(306) 및 센서(308)와 같이 로봇식 팔 상에 장착된 하나 이상의 센서로부터의 스캔들은, 트럭 또는 다른 컨테이너의 측면들, 바닥, 천장 및/또는 전방 벽을 포함하는 환경의 디지털 모델을 구축하도록 통합될 수 있다. 이 정보를 이용하여, 제어 시스템은 이동 베이스로 하여금 내리거나 싣는 위치로 운행하게 할 수 있다.
추가 예들에서, 로봇식 팔(302)은 디지털 흡입 그리드 파지기와 같은 파지기(304)를 구비할 수 있다. 이러한 실시예들에서, 파지기는 원격 감지, 또는 단일 지점 거리 측정에 의해 및/또는 흡입이 달성되는지를 검출함으로써 턴 온 또는 오프될 수 있는 하나 이상의 흡입 밸브를 포함할 수 있다. 추가 예들에서, 디지털 흡입 그리드 파지기는 연접식 연장부(articulated extension)를 포함할 수 있다. 일부 실시예들에서, 유변 유체들(rheological fluids) 또는 분말들로 흡입 파지기들을 작동시키는 가능성은 높은 곡률들을 갖는 오브젝트들에 대한 가외의 파지를 가능하게 할 수 있다.
트럭 언로더(300)는 추가적으로 전원에 의해 전력을 공급받는 전기 모터일 수 있거나, 가스 기반 연료 또는 태양열 발전과 같은, 다수의 상이한 에너지원들에 의해 전력을 공급받을 수 있는, 모터를 포함할 수 있다. 또한, 모터는 전원 공급 장치로부터 전력을 받도록 구성될 수 있다. 전원 공급 장치는 로봇식 시스템의 다양한 구성요소들에 전력을 제공할 수 있고, 예를 들어, 재충전가능한 리튬 이온 또는 납산 배터리(lead-acid battery)를 나타낼 수 있다. 예시적인 실시예에서, 이러한 배터리들 중 하나 이상의 뱅크는 전력을 제공하도록 구성될 수 있다. 다른 전원 공급 물질들 및 타입들이 또한 가능하다.
도 3b는 예시적인 실시예에 따른 자율 유도 차량(AGV)을 나타낸다. 보다 구체적으로는, AGV(340)는 개별 박스들 또는 케이스들을 운반할 수 있는 비교적 작은 이동 로봇식 디바이스일 수 있다. AGV(340)는 창고 환경 내에서의 이동을 가능하게 하기 위한 휠들(342)을 포함할 수 있다. 또한, AGV(340)의 상부 표면(344)은 운반을 위한 박스들 또는 다른 오브젝트들을 배치하는데 이용될 수 있다. 일부 예들에서, 상부 표면(344)은 오브젝트들을 AGV(340)로 또는 AGV(340)로부터 이동시키기 위한 회전 컨베이어들을 포함할 수 있다. AGV(340)는 AGV(340)에 연결되고 AGV(340)에 대해 이동(예를 들어, AGV(340)에 대해 회전 및/또는 병진)하여 환경의 상이한 부분들을 관측하도록 구성된 센서(346)(예를 들어, 스테레오 카메라)를 포함할 수 있다. 센서(346)는 다른 작업들 중에서 장애물 검출, 차량 위치파악 및 팔레트/오브젝트 검출에 이용될 수 있다. 일부 예시적인 구현예들에서, 센서(364)는 도 3b에 도시된 것과는 상이한 부분의 AGV(340)에 연결될 수 있다.
추가 예들에서, AGV(340)는 배터리 충전소에서 신속하게 재충전될 수 있고/있거나 배터리 교환소에서 새로운 배터리들로 신속히 교환될 수 있는 하나 이상의 배터리에 의해 전력을 공급받을 수 있다. 추가 예들에서, AGV(340)는 추가적으로 운행용 센서들과 같이, 본 명세서에서 특별히 언급되지 않은 다른 구성요소들을 포함할 수 있다. 상이한 형상들과 크기들을 갖는 AGV들이 또한, 가능하게는 창고에 의해 취급되는 패키지 타입들에 따라, 로봇식 창고 차량군 내에 포함될 수 있다.
도 3c는 예시적인 실시예에 따른 자율 포크 트럭을 도시한다. 보다 구체적으로는, 자율 포크 트럭(360)은 박스들 또는 다른 더 큰 물질들의 팔레트들을 들어 올리고/올리거나 이동시키기 위한 지게차(362)를 포함할 수 있다. 일부 예들에서, 지게차(362)는 창고 내의 저장 랙 또는 다른 고정 저장 구조물의 상이한 랙들에 도달하기 위해 올려질 수 있다. 자율 포크 트럭(360)은 추가적으로 창고 내에서 팔레트들을 운반하기 위한 이동용 휠들(364)을 포함할 수 있다. 추가 예들에서, 자율 포크 트럭은, 로봇식 트럭 언로더(300)와 관련하여 설명된 것들과 같은, 감지 시스템뿐만 아니라 모터 및 전원 공급 장치를 포함할 수 있다. 예를 들어, 자율 포크 트럭(360)은 자율 포크 트럭(360)에 대해 이동(예를 들어, 회전 및/또는 병진)하여 환경의 상이한 부분들을 관측하도록 구성된 센서(366)(예를 들어, 스테레오 카메라)를 포함할 수 있다. 센서(366)는 도 3c에 도시된 것과는 상이한 부분의 자율 포크 트럭(360)에 연결될 수 있다. 자율 포크 트럭(360)은 또한 도 3c에 도시된 것과 크기 또는 형상이 다를 수 있다.
Ⅳ. 예시적인 센서 궤적 결정 동작들
다른 유사한 차량들 및 로봇식 디바이스들(예를 들어, 자율 팔레트 잭)뿐만 아니라 본 명세서에서 설명되고 예시된 자율 차량들(예를 들어, 로봇식 트럭 언로더(300), AGV(340) 및 포크 트럭(360))은 창고 또는 유사한 환경들에서의 복수의 작업들을 수행하는데 이용될 수 있다. 예를 들어, 차량들은 오브젝트를 수신하고, 오브젝트들을 저장하고, 저장소로부터 오브젝트들을 회수하고, 오브젝트들을 운반하고, 창고로부터 오브젝트들을 배달하거나 아니면 유사한 환경의 창고에서 오브젝트들을 처리하는데 이용될 수 있다. 차량들은 창고 또는 저장 시설의 특정 영역들로 이동하여 다른 위치로의 운반을 위해 박스들을 들어 올릴 수 있다. 차량들은 박스들의 팔레트들을 구성 또는 해체하고/하거나 박스들을 개봉하여 박스들 내의 아이템들을 조작할 수 있다.
복수의 작업들을 수행함에 있어서, 자율 차량들은 예를 들어 도 2a에 도시된 글로벌 제어 시스템(250)에 의해 지시되어 미리결정된 경로들을 따라 주행할 수 있다. 글로벌 제어 시스템(250)은 자율 차량들의 동작들을 동기화하고 환경의 다른 차량들, 오브젝트들, 피처들, 및/또는 환경 내의 인간 작업자들과의 충돌 가능성을 최소화하기 위해 미리결정된 경로들을 생성할 수 있다. 미리결정된 경로들은 트럭들에 싣고/내리고, 팔레트들을 구성/해체하고, 본 명세서에서 설명되거나 다른 방식으로 고려되는 임의의 다른 동작을 수행하도록 차량들을 동기화시킬 수 있다.
자율 차량들의 일부 또는 전부는 제한된 시야를 갖는 센서를 구비할 수 있다. 예들에서, 시야는 주어진 시간에 센서에게 보이는 각도 범위(예를 들어, 부피 또는 면적)일 수 있다. 제한된 시야가 없는 센서는 센서를 회전시키지 않고도 센서 주위의 360도 각도 범위 전체를 관측할 수 있다. 이에 비해, 제한된 시야를 갖는 센서는 센서 주위의 360도 각도 범위 전체의 일부만을 관측할 수 있다. 따라서, 센서는 센서 주위의 360도 각도 범위 전체를 관측하기 위해 회전 또는 이동될 필요가 있을 수 있다. 일 예에서, 제한된 시야는 주어진 시간에 센서에게 보이는 45도 각도 범위를 포함할 수 있다. 따라서, 센서 주위의 360도 각도 범위 전체의 1/8만이 주어진 시간(예를 들어, 센서의 시야 내에 있을 때)에 센서에 의해 관측될 수 있다.
센서는 비전 센서(예를 들어, 도 3a, 도 3b 및 도 3c에 도시된 바와 같은 센서(306, 308, 346 또는 366))일 수 있다. 일부 예들에서, 센서는 환경 주위의 운행 및 자율 차량에 의한 환경 내의 오브젝트들의 인식을 위해 데이터를 수집하는데만 이용되는 센서 및/또는 1차 센서일 수 있다. 그 결과, 센서는 예를 들어 장애물 검출, 차량 위치파악 및 오브젝트 검출(예를 들어, 팔레트 검출, 박스 검출)을 포함하는 복수의 목표들에 대한 센서 데이터를 수집하는데 이용될 수 있다. 단일 센서를 이용하여 복수의 목표들에 대한 센서 데이터를 수집하는 것은 복수의 목표들의 목표당 하나의 센서를 이용하는 것보다 저렴할 수 있다. 또한, 복수의 센서들과는 대조적으로 하나의 센서를 이용하면 복수의 센서들의 데이터 처리와 연관된 계산 복잡성을 줄이고 또한 복수의 센서들로부터 데이터를 수신하고 처리하는데 필요한 하드웨어의 양을 줄일 수 있다.
도 4는 센서에 대한 센서 궤적을 결정하기 위한 동작들의 예시적인 흐름도(400)를 도시한다. 블록(402)에서, 차량이 따라갈 미리결정된 경로가 결정 및/또는 수신될 수 있다. 예들에서, 미리결정된 경로는 차량이 동작하고 있거나 동작할 것으로 예상되는 환경의 적어도 일부분을 통과하는 경로일 수 있다. 미리결정된 경로는 복수의 차량들의 동작들을 동기화시키도록 구성된 글로벌 제어 시스템에 의해 결정될 수 있다. 대안적으로, 미리결정된 경로는 차량에 로컬인 제어 시스템(예를 들어, 차량의 운행 시스템)에 의해 결정될 수 있다.
블록(404)에서, 차량이 미리결정된 경로를 따라 이동함에 따라 차량에 연결된 센서로부터 센서 데이터를 수집하기 위한 복수의 목표들이 결정 및/또는 수신될 수 있다. 예들에서, 목표는 차량군 내의 차량이 수행하도록 플래닝되거나 구성된 작업 또는 기능일 수 있으며, 작업 또는 기능의 성능은 대응하는/연관된 센서 데이터 세트의 획득에 따라 달라진다. 따라서, 복수의 목표들 각각은 대응하는 센서 데이터 세트와 연관될 수 있다. 복수의 목표들 중 특정 목표와 연관된 센서 데이터의 대응하는 세트는 특정 목표를 달성하는데 필요한 데이터 세트일 수 있다. 예를 들어, 특정 목표가 미리결정된 경로를 따른 장애물 검출인 경우, 대응하는 센서 데이터 세트는 미리결정된 경로를 따른 환경의 부분들을 나타내는 센서 데이터를 포함할 수 있다. 미리결정된 경로를 따른 환경의 부분들을 나타내는 센서 데이터는 미리결정된 경로를 따라 장애물들을 검출하는데 필요하고/하거나 충분할 수 있다.
센서는 차량에 대해 회전 및/또는 병진하여 센서에게 보이는 환경의 부분을 제어하도록 구성될 수 있다. 센서는 피치축, 롤축 및 요축(yaw axis) 중 적어도 하나를 중심으로 회전할 수 있다. 센서는 x축, y축 및 z축 중 적어도 하나를 따라 병진할 수 있다. 센서는 하나 이상의 병진 운동 메커니즘을 이용하여 차량에 대해 병진하도록 구성될 수 있다. 일 예에서, 센서는 차량에 대해 센서를 수평 또는 수직으로 이동시키도록 구성된 리드 스크류에 연결될 수 있다. 다른 예에서, 센서는 차량에 대해 센서를 상승 및 하강시키도록 구성된 신축식 팔을 통해 차량에 연결될 수 있다.
블록(406)에서, 복수의 목표들 각각에 대해, 대응하는 센서 데이터 세트를 획득하기 위해 센서가 스캐닝할 환경의 적어도 하나의 부분이 결정될 수 있다. 위의 장애물 검출 예에서, 환경의 적어도 하나의 부분은 미리결정된 경로를 따른 환경의 부분들(예를 들어, 차량이 미리결정된 경로를 따라 이동함에 따라 차량에 의해 점유될 것으로 예상되는 환경의 영역들)을 포함할 수 있다. 다른 예에서, 목표가 관심 오브젝트들의 검출인 경우, 환경의 적어도 하나의 부분은 관심 오브젝트들에 의해 점유될 것으로 예상되는 차량의 양측 상의 영역들을 포함할 수 있다. 구체적으로, 차량은 창고의 통로를 통해 이동할 수 있으며, 관심 오브젝트들을 식별하기 위해 차량의 양측에 있는 선반들/랙들을 스캐닝할 수 있다. 오브젝트들은 예를 들어 오브젝트들에 부착되거나 오브젝트들 상에 배치된 기준 마커들/태그들(예를 들어, ARTags, AprilTags)에 기반하여 식별될 수 있다.
블록(408)에서, 차량이 미리결정된 경로를 따라 이동하는 동안 센서를 이동시키기 위한 센서 궤적은 복수의 목표들 각각에 대해 결정된 환경의 적어도 하나의 부분에 기반하여 결정될 수 있다. 센서 궤적은 차량이 미리결정된 경로를 따라 이동함에 따라 센서를 이동시키기 위한 각도 위치 궤적과, 각도 위치 궤적을 따라 센서를 이동시키는 속도를 나타내는, 각도 위치 궤적에 대응하는 속도 프로파일을 포함할 수 있다.
블록(410)에서, 센서는 결정된 센서 궤적을 통해 이동하게 되고, 차량이 미리결정된 경로를 따라 이동함에 따라 결정된 센서 궤적에 대응하는 환경의 부분들을 스캐닝하도록 야기될 수 있다. 일부 예들에서, 결정된 센서 궤적에 대응하는 환경의 부분들을 스캐닝하는 것은 복수의 목표들 각각에 대해 결정된 환경의 적어도 하나의 부분 각각을 스캐닝하는 것을 포함할 수 있다. 다른 예들에서, 결정된 센서 궤적에 대응하는 환경의 부분들을 스캐닝하는 것은 복수의 목표들 각각에 대해 결정된 환경의 적어도 하나의 부분의 서브세트를 스캐닝하는 것을 포함할 수 있다.
Ⅴ. 개별 동작들에 대한 환경의 부분들의 예시적인 결정들
복수의 목표들 중 하나의 목표에 대응하는 센서 데이터 세트를 획득하기 위해 센서가 스캐닝할 환경의 적어도 하나의 부분을 결정하는 것은 환경 내의 오브젝트의 예상되는 위치를 결정하는 것을 포함할 수 있다. 일 예에서, 오브젝트의 예상 위치는 센서에 의한 환경의 부분들의 이전 스캔들에 기반하여 결정될 수 있다. 이전 스캔들은 차량 및/또는 차량군의 일부를 형성하는 다수의 다른 차량들에 의해 수행될 수 있다. 오브젝트를 포함할 것으로 예상되는 환경의 부분을 스캐닝하여 오브젝트가 여전히 예상 위치에 있는지 여부 또는 오브젝트가 이동되었는지 여부를 결정할 수 있다. 유사하게, 환경 내의 차량의 정확한 위치에서의 불확실성은 차량과 오브젝트 사이의 상대적 위치를 보다 정확하게 결정하기 위해 센서가 오브젝트를 포함할 것으로 예상되는 환경의 부분을 스캐닝하게 할 수 있다.
다른 예에서, 차량의 제어 시스템은 환경의 특정 부분들이 관심 오브젝트들을 포함한다고 가정할 수 있다. 예를 들어, 창고의 통로를 통해 이동할 때, 제어 시스템은 창고의 통로들을 형성하는 선반들 상에 관심 오브젝트들(예를 들어, 박스들, 팔레트들)이 배치될 것으로 예상할 수 있다. 유사하게, 미리결정된 경로를 따라 장애물 검출을 수행하는 경우, 제어 시스템은 미리결정된 경로를 따라 임의의 장애물들이 존재하는지 여부를 결정하기 위해 센서가 미리결정된 경로에 대응하는 환경의 부분들을 스캐닝하도록 할 수 있다.
도 5는 복수의 목표들 중 특정 목표에 대응하는 센서 데이터 세트를 획득하기 위해 센서가 스캐닝할 환경의 적어도 하나의 부분을 결정하기 위한 예시적인 동작들을 도시한다. 구체적으로, 도 5는 팔레트 잭(500)으로서의 차량의 평면도를 도시한다. 도 5에서의 차량이 팔레트 잭으로 도시되어 있지만, 이러한 차량은 본 명세서에서 설명되거나 다른 방식으로 고려되는 임의의 다른 차량일 수 있다.
팔레트 잭(500)은 팔레트들을 들어 올리고 이동시키는데 이용될 수 있는 포크들(502 및 504)을 포함한다. 팔레트 잭(500)은 센서(505)를 추가로 포함한다. 센서(505)는 대응하는 시야(506a)(파선으로 도시됨)를 갖는 배향(506b)(파선으로 도시됨)과 대응하는 시야(508a)(점선으로 도시됨)를 생성하는 배향(508b)(점섬으로 도시됨)으로 도시되어 있다. 시야들(506a 및 508a)은 팔레트 잭(500)이 동작하는 환경의 바닥면 상에의 센서(505)의 3차원(3D) 시야의 2차원(2D) 투영들일 수 있다. 시야들(506a 및 508a)은 동일한 크기 및 형상일 수 있고, 대응하는 시야를 생성하는 센서(506b 및 508b)의 위치에서만 다를 수 있다.
관심 오브젝트(510)는 센서(505)의 시야들(506a 및 508a) 내에 도시된다. 위치(506b)에서 팔레트 잭(500)에 대한 센서(505)의 각도는 센서(505)의 시야 범위가 오브젝트(510)의 위치와 교차하는 최소 센서 각도를 포함할 수 있다. 마찬가지로, 위치(508b)에서 팔레트 잭(500)에 대한 센서(505)의 각도는 센서(505)의 시야 범위가 오브젝트(510)의 위치와 교차하는 최대 센서 각도를 포함할 수 있다. 관심 오브젝트(510)는 예를 들어, 팔레트, 박스, 환경의 피처, 다른 관심 오브젝트 또는 그 위에 위치된 기준 태그(예를 들어, AprilTag)일 수 있다. 오브젝트(510)의 전체가 시야들(506a 및 508a)과 완전히 교차하거나 시야들(506a 및 508a) 내에 포함되도록 보장하기 위해 버퍼 거리가 오브젝트(510)의 예상 또는 실제 크기에 추가될 수 있다.
따라서, 센서를 이동시키기 위한 센서 궤적을 결정하는 것은 센서의 각도 위치가 각도 위치들의 결정된 범위 내에 있을 때 센서의 시야 범위가 오브젝트의 예상 위치와 교차하도록 센서의 각도 위치들의 범위를 결정하는 것을 포함할 수 있다. 배향(506b)에 대응하는 센서(505)의 각도 위치는 결정된 범위의 제1 한계(예를 들어, 결정된 범위의 최소)를 형성할 수 있다. 마찬가지로, 배향(508b)에 대응하는 센서(505)의 각도 위치는 결정된 범위의 제2 한계(예를 들어, 결정된 범위의 최대)를 형성할 수 있다. 각도 위치들의 결정된 범위는 차량의 기준 프레임 또는 환경의 기준 프레임으로 표현될 수 있다.
일부 실시예들에서, 센서(505)의 줌/배율의 레벨은 팔레트 잭(500)의 제어 시스템에 의해 조절가능 및/또는 제어가능할 수 있다. 줌 레벨을 조정하면 시야들(506a 및 508b)이 더 커지거나 작아질 수 있다. 구체적으로, 줌/배율의 더 높은 레벨은 시야들(506a 및 508a)이 더 길어지고 더 좁아지게 할 수 있다(예를 들어, 시야(506a)의 만곡된 부분들은 더 멀리 이동할 수 있고, 직선 부분들은 서로 더 가깝게 이동할 수 있다). 줌/배율의 더 낮은 레벨은 시야들(506a 및 508a)이 더 넓어지고 더 짧아지게 할 수 있다(예를 들어, 시야(506a)의 만곡된 부분들은 서로 더 가깝게 이동할 수 있고, 직선 부분들은 더 멀리 이동할 수 있다).
따라서, 센서를 이동시키기 위한 센서 궤적을 결정하는 것은 센서 줌/배율의 복수의 가능한 레벨들 각각에 대해 센서의 각도 위치들의 복수의 범위들을 결정하는 것을 포함할 수 있다. 복수의 범위들 각각에 대해 센서의 각도 위치가 각도 위치들의 결정된 범위 내에 있을 때 주어진 줌 레벨에서의 센서의 시야 범위가 오브젝트의 예상 위치와 교차하도록 할 수 있다.
도 6은 복수의 목표들 중 특정 목표에 대응하는 센서 데이터 세트를 획득하기 위해 센서가 스캐닝할 환경의 적어도 하나의 부분을 결정하기 위한 대안적이고 예시적인 동작들을 도시한다. 구체적으로, 도 6은 차량에 대한 미리결정된 경로를 따라 장애물들을 검출하기 위해 센서 데이터를 수집하는 환경의 범위를 도시한다. 차량은 포크들(602 및 604)을 갖는 팔레트 잭(600)의 형태로 도시되고, 센서(605)는 환경의 부분을 통해 따라갈 미리결정된 궤적(606)을 수신할 수 있다. 제어 시스템은 미리결정된 경로(606)를 따라 팔레트 잭(600)의 예상 위치들에서 팔레트 잭(600)의 복수의 투영된 기하학적 표현들을 결정할 수 있다. 구체적으로, 제어 시스템은 미리결정된 궤적(606)을 따라 팔레트 잭(600)의 기하학적 표현들(608, 610, 612, 614 및 616)을 결정할 수 있다.
팔레트 잭(600)이 환경 내의 오브젝트들과의 충돌들을 방지하기 위해, 센서(605)는 팔레트 잭이 미리결정된 경로(606)를 따라 이동함에 따라 향후에 팔레트 잭(600)에 의해 점유될 것으로 예상되는 환경의 부분들(예를 들어, 팔레트 잭(600)의 투영된 기하학적 표현들(608, 610, 612, 614 및 616)에 의해 점유된 환경의 영역들)을 스캐닝하는데 이용될 수 있다. 정점들(618-623)을 갖는 볼록 다각형은 미리결정된 경로(606)를 따라 장애물들을 검출하기 위해 센서 데이터를 수집하기 위한 환경의 부분들의 윤곽을 나타내도록 팔레트 잭(600)의 투영된 기하학적 표현들(608-616)에 맞춰질 수 있다. 볼록 다각형의 정점들(618-623)은 볼록 다각형에 대해 센서(605)의 시야를 스위핑(sweep)하기 위해 센서가 스캐닝할 임계점들일 수 있으며, 이에 따라 미리결정된 경로(606)를 따라 장애물들을 검출하기 위해 센서 데이터를 수집하기 위한 환경의 부분들 모두를 스캐닝한다.
도 5와 관련하여 설명된 절차는 각각의 임계점에 대해 센서의 시야 내에 임계점을 배치하는 센서의 각도 위치들의 범위(및 범위의 최소 및 최대 경계들)를 결정하기 위해 임계점들(예를 들어, 정점들(618-623)) 각각에 대해 수행될 수 있다. 정점들(618-623) 각각에 대해 결정된 최대 및 최소 각도들에 기반하여, 글로벌 최대 각도 및 글로벌 최소 각도(예를 들어, 센서의 시야로 볼록 다각형의 영역을 스위핑하기 위해 센서가 이동할 수 있는 센서의 각도 위치들의 글로벌 범위)가 볼록 다각형에 대해 결정될 수 있다. 글로벌 최대 각도 및 글로벌 최소 각도는 차량의 기준 프레임 또는 환경의 기준 프레임으로 표현될 수 있다.
센서(605)를 글로벌 최소 각도로부터 글로벌 최대 각도로 스위핑하면 센서가 볼록 다각형의 영역을 스캐닝하게 할 수 있으며, 이에 따라 미리결정된 궤적(606)을 따라 이동하는 동안 팔레트 잭(600)에 의해 점유될 것으로 예상되는 환경의 부분들(예를 들어, 투영들(608, 610, 612, 614 및 616)에 의해 점유된 부분들)을 스캐닝하게 한다. 글로벌 최소 각도와 글로벌 최대 각도 사이의 각도 범위의 부분을 통해 센서(605)를 스위핑하면 센서(605)가 팔레트 잭(600)에 의해 점유될 것으로 예상되는 환경의 부분들의 서브세트를 스캐닝하게 할 수 있다. 예를 들어, 정점들(619-622) 사이의 볼록 다각형의 영역을 스캐닝하면 투영(608)에 의해 점유될 것으로 예상되는 환경의 부분들을 완전히 스캐닝할 수 있고, 투영들(610, 612 및 614)에 의해 점유될 것으로 예상되는 환경의 부분들을 부분적으로 스캐닝할 수 있다.
일부 실시예들에서, 정점들(618-623)을 갖는 볼록 다각형은 도 6에 도시된 바와 같이 팔레트 잭(600)의 바로 앞에 있는 영역을 포함하지 않을 수 있다. 팔레트 잭(600)의 바로 앞에 있는 영역은 팔레트 잭(600)의 아주 가까이까지 연장하지 않는 센서의 시야로 인해 생략될 수 있다. 센서(605)는 도 5에서 배향(506b)에서의 센서(505)와 투영된 시야(506a) 사이의 갭에 의해 도시된 바와 같이, 센서(605)의 특정 거리 내인 환경의 부분들을 스캐닝하지 못할 수 있다. 또한, 팔레트 잭(600)의 전방 영역은 센서(605)에 의해 이전에 스캐닝된 영역 때문에 볼록 다각형으로부터 생략될 수 있다.
Ⅵ. 예시적인 후보 센서 궤적 플래닝 동작들
도 7은 복수의 후보 센서 궤적들을 결정하기 위한 프로세스의 그래픽 표현을 도시한다. 구체적으로, 미리결정된 궤적에 대응하는 타임라인은 복수의 시점들(700-703)로 이산화될 수 있다. 시점(700)은 미리결정된 궤적의 시작에 대응할 수 있고, 시점(703)은 미리결정된 궤적의 끝에 대응할 수 있다. 일반적으로, 미리결정된 경로의 길이 및 미리결정된 경로가 이산화되는 입도에 따라 더 많거나 적은 시점들이 있을 수 있다. 미리결정된 경로가 이산화되는 입도는 센서의 프레임 레이트 제한들 및/또는 본 명세서에서 설명된 동작들을 수행하는 제어 시스템 또는 컴퓨팅 디바이스의 하드웨어 제한들에 기반할 수 있다.
시점들(700-703) 각각에 대해, 도 5 및 도 6과 관련하여 설명된 바와 같이, 관심 오브젝트들(예를 들어, 박스들 또는 팔레트들) 또는 센서의 시야 내의 복수의 목표들 각각에 대응하는 환경의 결정된 부분들(예를 들어, 미리결정된 궤적을 따라 차량에 의해 점유될 것으로 예상되는 영역)을 배치하는 센서의 각도 위치의 범위들이 결정될 수 있다.
미리결정된 경로의 시작에 대응하는 시점(700)에서, 센서는 각도 위치 Θ = Φ에 있을 수 있으며, 여기서 Φ는 블록/노드(704)에 도시된 바와 같이 미리결정된 경로의 시작에서의 센서의 초기 각도 위치이다. 블록(704)뿐만 아니라 블록들(706-732)은 컴퓨팅 디바이스의 메모리에 저장된 데이터 구조의 노드들의 시각적 표현일 수 있다. 노드(704)에 대응하는 차량 위치 및 각도 센서 위치로부터 센서에게 보이는 환경의 피처들, 오브젝트들 및/또는 부분들의 세트는 노드(704)에서 Set[0]에 의해 표시된 바와 같이 노드(704)의 일부로서 저장될 수 있다. Set[0]은 센서의 시야 내의 복수의 목표들 각각에 대응하는 관심 오브젝트 및/또는 환경의 결정된 부분들을 배치하는 센서의 각도 위치의 결정된 범위들에 기반하여 결정될 수 있다.
구체적으로, 제어 시스템은 블록(704)에서 센서의 각도 센서 위치 Θ = Φ가 결정된 각도 위치 범위들 내에 포함되거나 이와 교차하는지 여부를 결정할 수 있다. 센서의 각도 센서 위치 Θ = Φ가 결정된 각도 위치 범위들 내에 포함되거나 이와 교차할 때, 제어 시스템은 관심 오브젝트들 및/또는 복수의 목표들 각각에 대응하는 환경의 결정된 부분들이 시점(700)에서의 예상 차량 위치 및 시점(700)에서의 센서의 각도 위치 Θ = Φ로부터 센서에 의해 관측가능할 수 있는지를 결정할 수 있다. 특히, 제어 시스템은 관심 오브젝트들 및/또는 환경의 결정된 부분들 중 어떤 것이 센서에게 관측가능할 것인지를 결정할 수 있고, 이 정보를 Set[0]에 저장할 수 있다.
센서는 특정 최대 속도로 차량에 대해 이동하도록 제한될 수 있다. 따라서, 시점(700)과 시점(701) 사이의 시간차에서, 센서는 최대 속도와 시점(700)과 시점(701) 사이의 시간차의 곱과 동일한 거리만큼 좌측 또는 우측으로 패닝할 수 있다. 연속적인 시점들 사이의 최대 팬 거리는 도 7에서 Δα로 표시된다. 도 7에서는 센서가 2차원에서 좌측 또는 우측으로 회전하는 경우만 고려하지만, 동일한 프로세스가 3차원에서의 센서 움직임까지 확장될 수 있다. 또한, 센서를 좌측 또는 우측으로 이동시키는 것 이외에도, 센서의 각도 위치는 변하지 않고 유지될 수 있다. 이 경우는 도해의 단순화를 위해 도 7에 도시되지 않았지만 그럼에도 불구하고 본 명세서에서 고려된다.
따라서, 시점(701)에서, 센서는, 노드(706)에 도시된 바와 같이 후보 각도 위치 Θ = Φ-Δα(초기 위치 Θ = Φ로부터 Δα만큼 좌측 회전), Θ = Φ(위치가 변경되지 않았으며, 도시되지 않음), 및 노드(708)에 도시된 바와 같이 Θ = Φ+Δα(초기 위치 Θ = Φ로부터 Δα만큼 우측 회전)를 취할 수 있다. 다시, 노드들(706 및 708) 각각에서, 노드들(706 및 708)에 대응하는 차량 위치 및 각도 센서 위치로부터 센서에게 보이는 환경의 피처들, 오브젝트들 및/또는 부분들의 세트는 노드(706)에서의 Set[1] 및 노드(708)에서의 Set[2]에 의해 표시된 바와 같이 노드들(706 및 708)의 일부로서 저장될 수 있다. 노드들(706 및 708)은 노드들(706 및 708) 각각에 도달하기 위해 노드(704)로부터 시작하여 횡단되는 일련의 노드들을 따라 센서에게 관측가능한 환경의 오브젝트들 및/또는 피처들/부분들의 누적 리스트를 나타내는 데이터의 누적 세트를 추가로 포함할 수 있다. 따라서, 노드들(706 및 708)은 노드(704)에서 관측가능한 피처들의 리스트(예를 들어, Set[0])를 추가로 포함할 수 있다. 데이터의 누적 세트는 Set[1] 및 Set[2]의 일부로서 저장될 수 있다.
시점(702)에서, 후보 각도 위치들을 결정하는 프로세스는 또한 노드들(706 및 708) 각각에서 시작하여 반복될 수 있다. 구체적으로, 노드(706)에 의해 표현된 각도 위치 Θ = Φ-Δα로부터 이동하여, 센서는 노드(710)에 도시된 바와 같이 후보 각도 위치 Θ = Φ-2Δα(노드(706)의 각도 위치 Θ = Φ-Δα로부터 Δα만큼 좌측 회전), Θ = Φ-Δα(위치가 변경되지 않았으며, 도시되지 않음), 및 노드(712)에 도시된 바와 같이 Θ = Φ(노드(706)의 각도 위치 Θ = Φ-Δα로부터 Δα만큼 우측 회전)를 취할 수 있다. 유사하게, 노드(708)에 의해 표현된 각도 위치 Θ = Φ+Δα로부터 이동하여, 센서는 노드(714)에 도시된 바와 같이 후보 각도 위치 Θ = Φ(노드(708)의 각도 위치 Θ = Φ+Δα로부터 Δα만큼 좌측 회전), Θ = Φ+Δα(위치가 변경되지 않았으며, 도시되지 않음), 및 노드(716)에 도시된 바와 같이 Θ = Φ+2Δα(노드(708)의 각도 위치 Θ = Φ+Δα로부터 Δα만큼 우측 회전)를 취할 수 있다. 노드들(710-716) 각각에 대해, 노드들(710-716)에 대응하는 차량 위치 및 각도 센서 위치로부터 센서에게 보이는 환경의 피처들, 오브젝트들 및/또는 부분들의 세트는 노드(710)에서의 Set[3], 노드(712)에서의 Set[4], 노드(714)에서의 Set[5] 및 노드(716)에서의 Set[6]에 의해 표시된 바와 같이 노드들(710-716)의 일부로서 저장될 수 있다. 노드들(710-716) 각각은 노드들(710-716) 각각에 도달하기 위해 횡단되는 일련의 노드들을 따라 센서에게 관측가능한 환경의 오브젝트들 및/또는 피처들/부분들의 누적 리스트를 나타내는 데이터의 누적 세트를 포함할 수 있다. 데이터의 누적 세트는 Set[3], Set[4], Set[5] 및 Set[6]의 일부로서 저장될 수 있다.
설명된 프로세스는 또한 노드들(718-732)에 대응하는 차량 위치 및 각도 위치로부터 센서에게 보이는 환경의 피처들, 오브젝트들 및/또는 부분들의 대응하는 세트들로 시점(703)에서 노드들(718-732)을 생성하기 위해 반복될 수 있다. 노드들(718-732) 각각은 노드들(718-732) 각각에 도달하기 위해 노드(704)에서 시작하여 횡단되는 일련의 노드들을 따라 센서에게 관측가능한 환경의 오브젝트들 및/또는 피처들/부분들의 누적 리스트를 나타내는 데이터의 누적 세트를 포함할 수 있다. 데이터의 누적 세트는 Set[7], Set[8], Set[9], Set[10], Set[11], Set[12], Set[13], Set[14]의 일부로서 저장될 수 있다. 예를 들어, Set[7]에는 Set[0], Set[1] 및 Set[3]에 저장된 데이터의 누적 리스트가 포함될 수 있다. Set[12]에는 Set[0], Set[2] 및 Set[5]에 저장된 데이터의 누적 리스트가 포함될 수 있다.
노드들(704-732)에 대응하는 차량 위치 및 각도 센서 위치는 도 6과 관련하여 설명된 바와 같이 미리결정된 경로를 따라 차량의 예상 위치들에서 차량의 투영된 기하학적 표현들에 기반하여 결정될 수 있다. 차량이 미리결정된 경로를 따라 이동함에 따라, 센서 자체가 차량에 대해 회전, 병진 또는 달리 작동되지 않아도 차량의 움직임으로 인해 환경에 대한 센서의 자세(예를 들어, 위치 및 배향)가 변경될 수 있다. 즉, 차량이 미리결정된 경로를 따라 이동함에 따라, 차량의 기준 프레임은 환경 내의 정적 기준 프레임으로부터 갈라질 수 있다. 차량에 대한 센서의 자세는 센서가 활발하게 작동되거나 병진되지 않는 한 변경되지 않을 수 있다. 도 7에 도시된 바와 같이, 센서의 각도 위치들(예를 들면, 노드(704)에서의 Θ = Φ, 노드(708)에서의 Θ = Φ+Δα)은 차량의 기준 프레임으로 표현될 수 있다. 따라서, 복수의 목표들에 대응하는 환경의 관심 오브젝트들 및/또는 부분들/피처들에 대응하는 각도 위치들의 결정된 범위들이 차량의 기준 프레임과 상이한 기준 프레임으로 표현되면, 각도 위치들의 결정된 범위들은 차량의 기준 프레임으로 변형될 필요가 있을 수 있다.
일부 실시예들에서, 센서의 회전, 병진 또는 작동이 없는 환경에 대한 센서의 자세는 센서 궤적을 결정하고/하거나 결정된 센서 궤적을 따라 이동하도록 센서를 어떻게 작동시킬지를 결정하기 위한 대안적인 기준 프레임으로서 이용될 수 있다. 이 기준 프레임은 센서 기준 프레임이라고 할 수 있다. 센서 기준 프레임은 센서가 미리결정된 경로를 따른 차량의 움직임으로 인해(그러나, 센서 자체의 움직임에 기인하지는 않음) 환경 내에서 방향 전환되고 재배치됨에 따라 센서 기준 프레임이 변경될 수 있다는 점에서 동적 기준 프레임일 수 있다. 센서 기준 프레임은 특정 시점에서의 차량의 투영된 기하학적 표현 및 특정 시점 이전의 시점에서의 차량에 대한 센서 자세에 기반하여 복수의 향후 시점들 중 특정 시점에 대해 결정될 수 있다. 따라서, 센서 궤적을 결정하는 것은 미리결정된 경로를 따라 각각의 시점에 대해 센서 기준 프레임에 대해 센서를 어떻게 이동시켜 복수의 목표들 각각에 대해 결정된 환경의 부분들을 관측하게 하는 것을 수반할 수 있다.
도 7에 도시된 그래프는 지향성 비순환 그래프(directed acyclic graph)라고 할 수 있다. 일부 실시예들에서, 그래프의 노드들은 그래프를 단순화하기 위해 병합될 수 있다. 특히, 그래프를 단순화하기 위해 동일한 상태들 또는 매우 유사한 상태들을 나타내는 노드들을 병합할 수 있다. 예를 들어, 둘 이상의 노드들 각각의 환경의 피처들/부분들의 누적 리스트들의 데이터의 각각의 누적 세트들이 동일할 때 둘 이상의 노드들이 병합될 수 있다. Set[8]이 Set[9]와 동일한 누적 데이터 세트를 포함하고 있으면 노드들(720 및 722)이 병합될 수 있다. 다시 말해, 노드들(704 및 720)과 노드들(704 및 722) 사이의 센서 궤적 상에 획득된 센서 데이터에 차이가 없는 경우, 노드들(720 및 722)은 단일 노드로 병합될 수 있다(예를 들어, 노드(722)는 제거될 수 있다).
다른 실시예에서, 둘 이상의 노드들 각각의 환경의 피처들/부분들의 누적 리스트들의 데이터의 각각의 누적 세트들이 동일할지라도, 둘 이상의 노드들이 병합되지 않을 수 있다. 구체적으로, 둘 이상의 노드들 각각에 도달하는 것과 연관된 센서 궤적의 다른 특성들이 고려될 수 있다. 이러한 특성들은 센서에 의해 이동된 전체 거리, 센서의 회전 방향의 변화들의 수 및/또는 센서 궤적을 따른 센서 스캔들의 품질/해상도에 영향을 줄 수 있는 다른 인자들을 포함할 수 있다.
노드(704)와 노드들(718-732) 각각의 사이의 일련의 노드들은 차량이 미리결정된 경로를 따라 이동함에 따라 센서가 따라갈 센서 궤적이 선택되는 복수의 후보 센서 궤적들을 포함할 수 있다. 대응하는 데이터 세트들(Set[7]-Set[14])은 각각의 센서 궤적들을 따라 센서에 의해 관측가능한 환경의 부분들의 세트를 포함할 수 있다. 센서 궤적은 복수의 목표들과 연관된 적어도 하나의 파라미터를 나타내는 목표 함수에 기반하여 노드들(718-732)에 의해 표현된 복수의 후보 센서 궤적들로부터 선택될 수 있다. 즉, 센서 궤적은 복수의 목표들을 가장 근접하게 만족시키는 노드들(718-732)로부터 노드를 선택함으로써 선택될 수 있다.
목표 함수는 차량의 제어 시스템, 글로벌 제어 시스템, 및/또는 차량의 사용자/운전자에 의해 결정될 수 있다. 목표 함수의 파라미터들은 다른 가능한 것들 중에서 각각의 후보 센서 궤적을 따라 보이는 환경의 별개의 오브젝트들 및/또는 피처들/부분들의 수, 각각의 후보 센서 궤적을 따라 관측가능한 복수의 목표들 각각에 대해 결정된 환경의 부분들의 수, 각각의 후보 센서 궤적을 따라 센서에 의해 소비된 전력, 각각의 센서 궤적을 횡단하는 시간, 및 각각의 센서 궤적을 따라 획득된 센서 데이터의 최소 및/또는 평균 해상도를 포함할 수 있다.
센서 궤적은 목표 함수 및/또는 그 파라미터들을 최대화 또는 최소화하는(예를 들어, 관측된 환경의 별개의 부분들의 수를 최대화하고, 센서 궤적을 횡단하는 시간을 최소화하는) 복수의 후보 센서 궤적들로부터 선택될 수 있다. 일부 실시예들에서, 목표 함수는 특정 후보 센서 궤적과 연관된 비용(예를 들어, 시간, 전력)을 나타내는 비용 함수를 지칭하거나 이를 포함할 수 있다.
일부 예들에서, 제어 시스템은 복수의 목표들에 대응하는 복수의 우선순위 레벨들을 수신할 수 있다. 목표 함수는 우선순위가 높은 목표들에 대응하는, 센서에 의해 관측가능한 환경의 부분들의 수를 최대화하는 궤적을 선택하는 것을 나타낼 수 있다. 대안적으로, 목표 함수는 높은 우선순위 목표들(예를 들어, 장애물 검출)에 대응하는 환경의 모든 부분들이 센서 궤적을 따라 센서에 의해 스캐닝될 필요가 있음을 나타낼 수 있다. 목표 함수를 만족시키는 센서 궤적이 발견될 수 없을 때, 미리결정된 경로 및/또는 미리결정된 경로를 따른 차량의 속력은 목표 함수에 의해 지시된 환경의 부분들을 센서가 스캐닝할 수 있도록 변경되거나 조절될 수 있다.
다른 예들에서, 센서 궤적의 부분들 및/또는 복수의 작업들에 대응하는 환경의 부분들에 대응하는 최소 스캔 해상도는 차량의 제어 시스템에 의해 결정되거나 또는 제어 시스템에 제공될 수 있다. 예를 들어, 최소 스캔 해상도는 복수의 목표들 각각과 연관된 우선순위 레벨에 기반할 수 있다. 대안적으로, 최소 스캔 해상도는 환경의 부분 내에 있는 오브젝트들을 인식/식별하기에 불충분한 데이터를 제공하는 환경의 부분의 이전 스캔에 응답하여 환경의 부분에 대해 결정될 수 있다. 차량의 속력 및/또는 센서의 회전 속력은 환경의 추가 부분들을 스캐닝하고/하거나 환경의 일부 부분들에 대한 보다 상세한 스캔을 수행(예를 들어, 움직임과 진동들로 인한 해상도 저하를 최소화하기 위해 차량과 센서 모두가 정지된 동안에 스캔을 수행)하기 위한 추가 시간을 센서에게 제공하도록 조절될 수 있다.
일부 실시예들에서, 도 7과 관련하여 설명된 동작들은 센서 궤적을 플래닝하고 선택하는데 있어서 하나 이상의 센서 파라미터를 고려하도록 확장될 수 있다. 센서 파라미터들은 센서 성능 파라미터들로 지칭될 수 있고, 다수의 다른 가능한 센서 파라미터들 중에서 줌/배율의 레벨, 프레임 레이트, 해상도, 이미지 노출, 화이트 밸런스 및/또는 이득을 포함할 수 있다. 센서 성능 파라미터들은 센서에 의해 캡처된 각각의 데이터 프레임(예를 들어, 이미지 프레임)에 대해 조정될 수 있고, 데이터 프레임의 품질(예를 들어, 스캔 품질)에 집합적으로 영향을 주거나 이를 결정할 수 있다.
데이터의 품질은 예를 들어, 관심 오브젝트와 주변 환경 피처들 간의 대비 레벨에 기반하여 측정될 수 있다. 높은 대비는 관심 오브젝트(예를 들어, 팔레트)가 배경 환경에 대해 식별/인식되게 하고 차량에 대한 오브젝트의 위치/배향을 결정하도록 해석되게 할 수 있다. 예들에서, 데이터의 품질은 특정 동작(예를 들어, 오브젝트 검출, 환경 피처 검출 등)을 수행하는데 이용하기 위한 데이터의 적합성으로서 정의될 수 있다.
센서는 복수의 센서 파라미터들의 각각의 파라미터에 대해 가능한 범위의 값들 또는 옵션들로 구성될 수 있다. 예를 들어, 센서의 줌 레벨은 연속 또는 이산 증분들로 1x와 30x 사이에서 조정할 수 있다(예를 들어, 1x의 증분들은 1x 내지 30x 범위를 30개의 이산 줌 값 옵션들, 1x, 2x, 3x, ... 29x, 30x로 나눌 수 있다). 프레임 레이트, 해상도, 이미지 노출, 화이트 밸런스 및/또는 이득의 각각은 유사하게 이산화될 수 있는 유사한 범위의 가능한 값들을 가질 수 있다. 일부 실시예들에서, 둘 이상의 파라미터들 사이에 트레이드-오프가 있을 수 있다. 예를 들어, 프레임 레이트와 이미지 해상도의 곱은 프로세서 또는 데이터 버스의 최대 대역폭에 의해 제한될 수 있다. 따라서, 센서의 프레임 레이트를 증가시키는 것은 센서에 의해 캡처된 이미지들의 해상도의 대응하는 감소와 연관될 수 있다.
센서 회전 및/또는 병진의 속력이 최대 속도로 제한될 수 있는 것처럼, 복수의 센서 파라미터들 중 일부의 변화율은 최대값들로 제한될 수 있다. 예를 들어, 센서의 줌 레벨을 조정하는 것은 센서의 하나 이상의 렌즈를 물리적으로 재배치하는 것을 수반할 수 있다. 렌즈들의 움직임 속력은 최대 속력으로 제한될 수 있다. 따라서, 줌의 변화율은 마찬가지로 대응하는 최대값으로 제한될 수 있다(예를 들어, 줌은 시점들(700 및 701) 사이의 시간량에서 많아야 1x만큼 증분될 수 있다). 따라서, 미리결정된 경로의 시작 시간에서의 센서의 파라미터들 및 파라미터들의 최대 조정율들에 따라, 노드들(704-732) 각각에서 센서가 설정되거나 조정될 수 있는 파라미터들이 제한될 수 있다.
일 예에서, 센서 궤적이 복수의 후보 센서 궤적들로부터 선택된 후에 센서 파라미터들이 결정 및/또는 조정될 수 있다. 구체적으로, 센서 파라미터들은 결정된 센서 궤적을 따라 센서에 의해 관측가능한 환경의 각각의 부분에 대해 결정될 수 있다. 센서 파라미터들은 선택된 센서 궤적을 따라 센서에게 관측가능한 환경의 부분들과 연관되거나 연관될 것으로 예상되는 조건들/특성들에 기반하여 결정될 수 있다. 예를 들어, 어둡거나 덜 조명될 것으로 예상되는 환경의 부분들(예를 들어, 랙들 또는 선반들)에 대해 이미지 노출이 증가될 수 있다. 유사하게, 센서 배율은 센서의 시야의 극한 부근에 위치될 것으로 예상되는 오브젝트의 보다 상세한 스캔을 수행하도록 증가될 수 있다. 따라서, 결정된 센서 궤적을 따라 수집된 데이터의 품질을 향상시키거나 최적화하는 센서 파라미터들이 결정될 수 있다.
다른 예에서, 센서 파라미터들은 복수의 후보 센서 궤적들 각각에 대해 결정될 수 있다. 센서 궤적은 복수의 후보 센서 궤적들 각각에 대해 결정된 센서 파라미터들에 기반하여 복수의 후보 센서 궤적들로부터 선택될 수 있다. 주어진 후보 센서 궤적의 각각의 각도 위치에서 센서 파라미터들이 조정될 수 있는 값들은 후보 센서 파라미터들로 지칭될 수 있다. 도 7과 관련하여 설명된 동작들은 후보 센서 파라미터들을 고려하기 위해 확장될 수 있다. 예를 들어, 센서 줌이 노드(704)에서 4x로 설정되고, 센서가 연속적인 시간 스텝들 사이에서 1x의 최대 변화율로 제한되면, 노드(706)에서 센서는 3x 줌 또는 5x 줌으로 조정될 수 있다. 이것은 노드(706)(및 다른 노드들)를 3x 줌 및 5x 줌 상태들을 나타내는 2개의 노드로 분할함으로써 시각적으로 표현될 수 있다.
따라서, 시점 및 후보 각도 위치와 연관된 노드들(704-732) 각각에 추가하여, 각각의 노드는 또한 각각의 센서 파라미터에 대한 가능한 값 범위와 연관될 수 있다. 즉, 각각의 후보 센서 궤적을 따라 센서에 의해 관측가능한 환경의 부분들의 각각의 세트에 대해, 하나 이상의 후보 센서 파라미터가 환경의 부분들의 각각의 세트를 스캐닝하기 위해 결정될 수 있다. 따라서, 센서 궤적은 선택된 센서 궤적을 따라 관측가능한 별개의 오브젝트들/피처들의 수를 최대화하고, 별개의 오브젝트들/피처들 각각을 스캐닝하기 위한 센서 파라미터들을 향상시키거나 최적화하는(예를 들어, 별개의 오브젝트들/피처들을 나타내는 데이터/이미지의 품질을 향상시키거나 최적화하는) 복수의 후보 센서 궤적들로부터 선택될 수 있다. 따라서, 별개의 오브젝트/피처들을 식별/인식할 확률 및/또는 별개의 오브젝트들/피처들이 인식될 정확도가 증가될 수 있다.
일부 실시예들에서, 센서 파라미터들은 데이터의 각각의 프레임(예를 들어, 카메라에 의해 촬영된 각각의 화상)에 대해 결정 및/또는 조정될 수 있다. 센서 파라미터들은 연속적인 프레임들 사이에서 조정되어 각각의 데이터 프레임의 품질을 향상시키거나 최적화할 수 있다. 센서에 의해 캡처된 데이터의 품질은 분석되어 향후의 데이터 프레임들을 캡처하기 위해 센서 파라미터들을 조정하기 위한 피드백으로 이용될 수 있다. 일부 경우들에서, 프레임 레이트는 환경의 특정 부분의 복수의 프레임들을 캡처하는데 충분할 수 있다. 환경의 특정 부분의 초기 데이터/이미지 프레임들을 캡처하는 경우, 센서 파라미터들은 환경의 특정 부분의 예상되는 조건들/특성들 및/또는 예상되는 내용에 기반하여 특정값들로 설정될 수 있다(예를 들어, 환경은 어두운 것으로 예상될 수 있고, 예상되는 내용은 기준 마커일 수 있으며, 기준 마커는 센서에 매우 가깝게 위치할 것으로 예상될 수 있다). 예를 들어, 제어 시스템은 선택된 센서 궤적을 따라 관측가능한 환경의 각각의 부분에 대해 결정된 센서 파라미터들에 기반하여 센서 파라미터들을 설정 및/또는 조정할 수 있다.
초기 데이터 프레임들이 획득된 후에, 초기 데이터 프레임들은 데이터의 품질이 충분한 정도의 확실성/정확도로 관심 오브젝트들/피처들을 인식하고/하거나 차량에 대해 오브젝트/피처의 위치/배향을 결정하기에 충분한지 여부를 결정하기 위해 분석될 수 있다. 제어 시스템은 초기 데이터 프레임들에 대해 수행된 분석에 기반하여 후속 센서 데이터 프레임들의 품질을 향상시키거나 최적화하기 위해 센서 파라미터들을 조정 또는 업데이트하도록 결정할 수 있다(예를 들어, 제어 시스템은 피드백 시스템을 포함할 수 있다). 예를 들어, 제어 시스템은 초기 데이터/이미지 프레임들이 너무 어둡고, 관심 오브젝트(예를 들어, 기준 마커)가 정확하게 인식하기에 센서로부터 너무 멀리 떨어져 위치한다고 결정할 수 있다. 제어 시스템은 센서의 줌/배율의 레벨을 증가시키고, 센서의 이득을 증가시키고/시키거나 센서의 이미지 노출을 증가시킴으로써 센서의 파라미터들을 조정하도록 결정할 수 있다. 따라서, 후속 데이터/이미지 프레임들은 초기 데이터/이미지 프레임들보다 밝을 수 있으며, 관심 오브젝트를 정확하게 인식하기에 충분한 세부사항을 포함할 수 있다.
Ⅶ. 결론
본 개시내용은 본 출원에서 설명된 특정 실시예들과 연관하여 제한되지 않으며, 이는 다양한 양태들의 예시로서 의도된다. 관련 기술분야의 통상의 기술자에게 명백한 바와 같이, 많은 수정들 및 변경들이 본 발명의 사상 및 범위를 벗어나지 않고 이루어질 수 있다. 본 명세서에 열거된 것들 이외에도, 본 개시내용의 범위 내에 있는 기능적으로 등가인 방법들 및 장치들은 전술한 설명들로부터 관련 기술분야의 통상의 기술자에게 명백할 것이다. 이러한 수정들 및 변경들은 첨부된 청구항들의 범위 내에 속하는 것으로 의도된다.
위 상세한 설명은 첨부 도면들을 참조하여 개시되는 시스템들, 디바이스들 및 방법들의 다양한 특징들 및 기능들을 설명한다. 도면들에서, 유사한 부호들은, 문맥이 달리 기술되지 않으면, 유사한 구성요소들을 통상적으로 식별한다. 본 명세서 및 도면들에서 설명된 예시적인 실시예들은 제한하려는 것이 아니다. 본 명세서에 제시된 주제의 사상 또는 범위를 벗어나지 않고서 다른 실시예들이 이용될 수 있고, 다른 변경들이 이루어질 수 있다. 본 명세서에서 일반적으로 설명되고, 도면들에 도시되는 바와 같이, 본 개시내용의 양태들은 매우 다양하고 상이한 구성들로 배열, 대체, 조합, 분리 및 설계될 수 있고, 이들 모두가 본 명세서에서 명백하게 고려된다는 점이 용이하게 이해될 것이다.
정보 처리를 나타내는 블록은 본 명세서에서 설명된 방법 또는 기술의 특정 논리 기능들을 수행하도록 구성될 수 있는 회로에 대응할 수 있다. 대안적으로 또는 추가적으로, 정보 처리를 나타내는 블록은 (관련 데이터를 포함하는) 프로그램 코드의 일부, 세그먼트 또는 모듈에 대응할 수 있다. 프로그램 코드는 방법 또는 기술에서의 특정 논리 기능들 또는 동작들을 구현하기 위해 프로세서에 의해 실행가능한 하나 이상의 명령어를 포함할 수 있다. 프로그램 코드 및/또는 관련 데이터는, 디스크나 하드 드라이브 또는 다른 저장 매체를 포함하는 저장 디바이스와 같은 임의의 타입의 컴퓨터 판독가능한 매체 상에 저장될 수 있다.
컴퓨터 판독가능한 매체는, 레지스터 메모리, 프로세서 캐시 및 랜덤 액세스 메모리(RAM)와 같이 짧은 기간 동안 데이터를 저장하는 컴퓨터 판독가능한 매체와 같은 비일시적 컴퓨터 판독가능한 매체를 또한 포함할 수 있다. 컴퓨터 판독가능한 매체는, 예를 들어, 판독 전용 메모리(ROM), 광학 또는 자기 디스크들, 컴팩트 디스크 판독 전용 메모리(CD-ROM)와 같은 이차 또는 지속적 장기 저장소와 같이 더 긴 기간 동안 프로그램 코드 및/또는 데이터를 저장하는 비일시적 컴퓨터 판독가능한 매체를 또한 포함할 수 있다. 컴퓨터 판독가능한 매체는 또한 임의의 다른 휘발성 또는 비휘발성 저장 시스템들일 수 있다. 컴퓨터 판독가능한 매체는 예를 들어 컴퓨터 판독가능한 저장 매체 또는 유형의(tangible) 저장 디바이스로 고려될 수 있다.
또한, 하나 이상의 정보 전송을 나타내는 블록은 동일한 물리적 디바이스에서의 소프트웨어 및/또는 하드웨어 모듈들 사이의 정보 전송들에 대응할 수 있다. 그러나, 상이한 물리적 디바이스들에서 소프트웨어 모듈들 및/또는 하드웨어 모듈들 사이에 다른 정보 전송들이 이루어질 수 있다.
도면들에 도시되는 특정 배열들은 제한적인 것으로 봐서는 안 된다. 다른 실시예들은 주어진 도면에 도시된 각각의 요소를 더 많거나 적게 포함할 수 있음을 이해해야 한다. 또한, 도시되는 요소들의 일부가 조합되거나 생략될 수 있다. 또한, 예시적인 실시예는 도면들에 도시되지 않은 요소들을 포함할 수 있다.
다양한 양태들 및 실시예들이 본 명세서에 개시되었지만, 다른 양태들 및 실시예들이 관련 기술분야의 통상의 기술자에게 명백할 것이다. 본 명세서에 개시된 다양한 양태들 및 실시예들은 예시의 목적들을 위한 것이고, 제한을 의도하지 않으며, 다음의 청구항들에 의해 진정한 범위가 표시된다.

Claims (20)

  1. 시스템으로서,
    차량;
    상기 차량에 연결된 센서 - 상기 센서는 상기 차량에 대해 이동하여 상기 센서에 의해 관측가능한 환경의 부분을 제어하도록 구성됨 -; 및
    제어 시스템
    을 포함하며,
    상기 제어 시스템은,
    상기 차량이 따라갈 미리결정된 경로를 수신하고,
    상기 차량이 상기 미리결정된 경로를 따라 이동함에 따라 센서 데이터를 수집하기 위한 복수의 목표들(objectives)을 수신하고 - 상기 복수의 목표들 각각은 대응하는 센서 데이터 세트와 연관됨 -,
    상기 복수의 목표들 각각에 대해, 상기 대응하는 센서 데이터 세트를 획득하기 위해 상기 센서가 스캐닝할 상기 환경의 적어도 하나의 부분을 결정하고,
    상기 복수의 목표들 각각에 대해 결정된 상기 환경의 적어도 하나의 부분에 기반하여, 상기 차량이 상기 미리결정된 경로를 따라 이동하는 동안 상기 센서를 이동시키기 위한 센서 궤적을 결정하며,
    상기 센서로 하여금 결정된 센서 궤적을 통해 이동하게 하고 상기 차량이 상기 미리결정된 경로를 따라 이동함에 따라 상기 결정된 센서 궤적에 대응하는 상기 환경의 부분들을 스캐닝하게 하는 명령어들을 제공하도록 구성되는 시스템.
  2. 제1항에 있어서,
    상기 제어 시스템은,
    상기 복수의 목표들에 대응하는 복수의 우선순위 레벨들을 결정하고,
    (i) 상기 복수의 목표들 각각에 대해 결정된 상기 환경의 적어도 하나의 부분 및 (ii) 결정된 복수의 우선순위 레벨들에 기반하여, 상기 차량이 상기 미리결정된 경로를 따라 이동하는 동안 상기 센서를 이동시키기 위한 상기 센서 궤적을 결정하도록 추가로 구성되는 시스템.
  3. 제1항에 있어서,
    상기 제어 시스템은,
    상기 복수의 목표들 각각에 대해, 상기 환경 내의 상기 환경의 적어도 하나의 결정된 부분의 위치에 기반하여 상기 환경의 상기 적어도 하나의 결정된 부분을 스캐닝하는 것과 연관된 비용을 결정하고,
    상기 복수의 목표들 각각에 대해 결정된 비용에 기반하여 상기 복수의 목표들에 대한 전체 비용 함수를 결정하며,
    상기 전체 비용 함수를 최소화하는 센서 궤적을 결정함으로써 상기 센서를 이동시키기 위한 상기 센서 궤적을 결정하도록 추가로 구성되는 시스템.
  4. 제3항에 있어서,
    상기 환경의 상기 적어도 하나의 결정된 부분을 스캐닝하는 것과 연관된 비용은 현재 센서 위치로부터 상기 환경의 상기 적어도 하나의 결정된 부분에 대응하는 센서 위치로 상기 센서를 이동시키기 위한 시간량인 시스템.
  5. 제1항에 있어서,
    상기 제어 시스템은,
    상기 결정된 센서 궤적에 대응하는 상기 환경의 부분들 중 하나 이상에 대해, 최소 스캔 해상도를 결정하고,
    상기 결정된 센서 궤적에 대응하는 상기 환경의 부분들 중 하나 이상에 대한 결정된 최소 스캔 해상도에 기반하여 상기 센서가 상기 결정된 센서 궤적을 따라 이동하는 속력을 조절하도록 추가로 구성되는 시스템.
  6. 제1항에 있어서,
    상기 제어 시스템은,
    상기 결정된 센서 궤적에 대응하는 상기 환경의 부분들 중 하나 이상에 대해, 최소 스캔 해상도를 결정하고,
    상기 결정된 센서 궤적에 대응하는 상기 환경의 부분들 중 하나 이상에 대한 결정된 최소 스캔 해상도에 기반하여 상기 차량이 상기 미리결정된 경로를 따라 이동하는 속력을 조절하도록 추가로 구성되는 시스템.
  7. 제1항에 있어서,
    상기 제어 시스템은,
    상기 복수의 목표들 중 특정 목표에 대해, 상기 환경 내의 오브젝트의 예상 위치를 결정함으로써 상기 대응하는 센서 데이터 세트를 획득하기 위해 상기 센서가 스캐닝할 상기 환경의 적어도 하나의 부분을 결정하고 - 상기 예상 위치에 대응하는 상기 환경의 부분을 스캐닝하는 것은 상기 특정 목표와 연관된 상기 대응하는 센서 데이터 세트를 제공함 -,
    상기 센서의 각도 위치들의 범위를 결정함으로써 상기 센서 궤적을 결정하도록 구성되며,
    상기 센서의 시야 범위는 상기 센서의 각도 위치가 상기 센서의 각도 위치들의 결정된 범위 내에 있을 때 상기 오브젝트의 상기 예상 위치와 교차하는 시스템.
  8. 제1항에 있어서,
    상기 제어 시스템은,
    상기 복수의 목표들과 연관된 적어도 하나의 파라미터를 나타내는 목표 함수를 결정하고,
    상기 차량이 상기 미리결정된 경로를 따라 이동하는 동안 상기 센서를 이동시키기 위한 복수의 후보 센서 궤적들을 결정하며,
    결정된 목표 함수를 최대화하는, 상기 복수의 후보 센서 궤적들로부터 센서 궤적을 선택함으로써,
    상기 차량이 상기 미리결정된 경로를 따라 이동하는 동안 상기 센서를 이동시키기 위한 센서 궤적을 결정하도록 구성되는 시스템.
  9. 제8항에 있어서,
    상기 목표 함수는 상기 결정된 센서 궤적을 따라 이동하는 동안 상기 센서에 의해 관측가능한 상기 환경에서의 별개의 피처들(features)의 수(a number of)를 나타내는 시스템.
  10. 제1항에 있어서,
    상기 제어 시스템은,
    (i) 상기 미리결정된 경로의 시작에 대응하는 센서 위치와 (ii) 상기 미리결정된 경로의 끝에 대응하는 복수의 후보 센서 위치들 사이의 복수의 후보 센서 궤적들을 결정하고,
    상기 복수의 후보 센서 궤적들의 각각의 후보 센서 궤적에 대해, 상기 각각의 후보 센서 궤적을 따라 상기 센서에 의해 관측가능한 상기 환경의 부분들의 세트를 결정하며,
    (i) 상기 복수의 후보 센서 궤적들 각각과 연관된 상기 환경의 결정된 부분들의 세트 및 (ii) 상기 복수의 목표들 각각에 대해 결정된 상기 환경의 적어도 하나의 부분에 기반하여 상기 복수의 후보 센서 궤적들로부터 센서 궤적을 선택함으로써,
    상기 차량이 상기 미리결정된 경로를 따라 이동하는 동안 상기 센서를 이동시키기 위한 센서 궤적을 결정하도록 구성되는 시스템.
  11. 제10항에 있어서,
    상기 제어 시스템은,
    상기 미리결정된 경로를 따라 복수의 시점들을 결정하고 - 상기 복수의 시점들의 각각의 시점은 상기 미리결정된 경로를 따른 상기 차량의 상이한 위치에 대응함 -,
    상기 복수의 시점들의 각각의 시점에 대해, (i) 상기 센서의 최대 회전 속도 및 (ii) 이전 시점에서의 상기 센서의 각도 위치에 기반하여 상기 센서의 복수의 후보 각도 위치들을 결정하며,
    (i) 상기 미리결정된 경로의 시작에 대응하는 시점과 (ii) 상기 미리결정된 경로의 끝에 대응하는 시점 사이에서 상기 센서의 상기 후보 각도 위치들의 복수의 시퀀스들을 결정함으로써 - 상기 복수의 후보 센서 궤적들은 상기 센서의 상기 후보 각도 위치들의 결정된 복수의 시퀀스들을 포함함 -,
    상기 복수의 후보 센서 궤적들을 결정하도록 구성되는 시스템.
  12. 제10항에 있어서,
    상기 제어 시스템은,
    상기 각각의 후보 센서 궤적을 따라 상기 센서에 의해 관측가능한 상기 환경의 부분들의 세트의 각각의 부분에 대해, 상기 환경의 부분들의 세트의 각각의 부분을 스캐닝하기 위한 하나 이상의 후보 센서 파라미터를 결정하고,
    (i) 상기 복수의 후보 센서 궤적들 각각과 연관된 상기 환경의 결정된 부분들의 세트, (ii) 상기 복수의 목표들 각각에 대해 결정된 상기 환경의 적어도 하나의 부분, 및 (iii) 상기 환경의 부분들의 세트의 각각의 부분을 스캐닝하기 위한 결정된 하나 이상의 후보 센서 파라미터에 기반하여 상기 복수의 후보 센서 궤적들로부터 센서 궤적을 선택함으로써,
    상기 차량이 상기 미리결정된 경로를 따라 이동하는 동안 상기 센서를 이동시키기 위한 센서 궤적을 결정하도록 구성되는 시스템.
  13. 제1항에 있어서,
    상기 결정된 센서 궤적은,
    상기 차량이 상기 미리결정된 경로를 따라 이동함에 따라 상기 센서를 이동시키기 위한 각도 위치 궤적, 및
    상기 각도 위치 궤적을 따라 상기 센서를 이동시키기 위한 속도를 나타내는, 상기 각도 위치 궤적에 대응하는 속도 프로파일을 포함하는 시스템.
  14. 제1항에 있어서,
    상기 복수의 목표들은,
    상기 미리결정된 경로 상의 장애물들의 검출,
    상기 환경 내의 상기 차량의 위치파악(localization), 및
    상기 미리결정된 경로에 인접한 상기 환경의 부분들에서의 관심 오브젝트들의 검출을 포함하는 시스템.
  15. 제1항에 있어서,
    상기 차량은 상기 환경 내의 팔레트를 이동시키도록 구성된 자율 포크 트럭이며,
    상기 복수의 목표들은 상기 환경의 특정 영역에서의 장애물들의 검출을 포함하고, 상기 자율 포크 트럭은 상기 팔레트를 상기 환경의 특정 영역으로 이동시키도록 스케줄링되는 시스템.
  16. 제1항에 있어서,
    상기 제어 시스템은,
    상기 결정된 센서 궤적에 기반하여, 상기 센서가 상기 결정된 센서 궤적을 통해 이동함에 따라 상기 센서의 시야 내에 상기 복수의 목표들 각각에 대해 결정된 상기 환경의 적어도 하나의 부분을 배치하기 위해 상기 미리결정된 경로에 대한 하나 이상의 변경을 결정하도록 추가로 구성되는 시스템.
  17. 제1항에 있어서,
    상기 제어 시스템은,
    상기 결정된 센서 궤적에 대응하는 상기 환경의 부분들을 스캐닝하기 위한 하나 이상의 센서 파라미터를 결정하고,
    결정된 상기 하나 이상의 센서 파라미터에 기반하여, 상기 센서가 상기 결정된 센서 궤적을 통해 이동하고 상기 결정된 센서 궤적에 대응하는 상기 환경의 부분들을 스캐닝할 때 상기 센서의 파라미터들을 조정하기 위한 명령어들을 제공하도록 추가로 구성되는 시스템.
  18. 차량이 따라갈 미리결정된 경로를 수신하는 단계;
    상기 차량이 상기 미리결정된 경로를 따라 이동함에 따라 상기 차량에 연결된 센서로부터 센서 데이터를 수집하기 위한 복수의 목표들을 수신하는 단계 - 상기 복수의 목표들 각각은 대응하는 센서 데이터 세트와 연관되고, 상기 센서는 상기 차량에 대해 이동하여 상기 센서에게 보이는 환경의 부분을 제어하도록 구성됨 -;
    상기 복수의 목표들 각각에 대해, 상기 대응하는 센서 데이터 세트를 획득하기 위해 상기 센서가 스캐닝할 상기 환경의 적어도 하나의 부분을 결정하는 단계;
    상기 복수의 목표들 각각에 대해 결정된 상기 환경의 적어도 하나의 부분에 기반하여, 상기 차량이 상기 미리결정된 경로를 따라 이동하는 동안 상기 센서를 이동시키기 위한 센서 궤적을 결정하는 단계; 및
    상기 센서로 하여금 결정된 센서 궤적을 통해 이동하게 하고 상기 차량이 상기 미리결정된 경로를 따라 이동함에 따라 상기 결정된 센서 궤적에 대응하는 상기 환경의 부분들을 스캐닝하게 하는 단계
    를 포함하는 방법.
  19. 제18항에 있어서,
    상기 복수의 목표들에 대응하는 복수의 우선순위 레벨들을 결정하는 단계; 및
    (i) 상기 복수의 목표들 각각에 대해 결정된 상기 환경의 적어도 하나의 부분 및 (ii) 결정된 복수의 우선순위 레벨들에 기반하여, 상기 차량이 상기 미리결정된 경로를 따라 이동하는 동안 상기 센서를 이동시키기 위한 상기 센서 궤적을 결정하는 단계를 더 포함하는 방법.
  20. 명령어들을 저장하는 비일시적 컴퓨터 판독가능한 저장 매체로서,
    상기 명령어들은, 컴퓨팅 디바이스에 의해 실행될 때, 상기 컴퓨팅 디바이스로 하여금,
    차량이 따라갈 미리결정된 경로를 수신하는 것,
    상기 차량이 상기 미리결정된 경로를 따라 이동함에 따라 상기 차량에 연결된 센서로부터 센서 데이터를 수집하기 위한 복수의 목표들을 수신하는 것 - 상기 복수의 목표들 각각은 대응하는 센서 데이터 세트와 연관되고, 상기 센서는 상기 차량에 대해 이동하여 상기 센서에게 보이는 환경의 부분을 제어하도록 구성됨 -,
    상기 복수의 목표들 각각에 대해, 상기 대응하는 센서 데이터 세트를 획득하기 위해 상기 센서가 스캐닝할 상기 환경의 적어도 하나의 부분을 결정하는 것,
    상기 복수의 목표들 각각에 대해 결정된 상기 환경의 적어도 하나의 부분에 기반하여, 상기 차량이 상기 미리결정된 경로를 따라 이동하는 동안 상기 센서를 이동시키기 위한 센서 궤적을 결정하는 것, 및
    상기 센서로 하여금 결정된 센서 궤적을 통해 이동하게 하고 상기 차량이 상기 미리결정된 경로를 따라 이동함에 따라 상기 결정된 센서 궤적에 대응하는 상기 환경의 부분들을 스캐닝하게 하는 것
    을 포함하는 동작들을 수행하게 하는 비일시적 컴퓨터 판독가능한 저장 매체.
KR1020187032217A 2016-06-09 2017-05-17 차량용 센서 궤적 플래닝 KR102107555B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/178,120 US9880561B2 (en) 2016-06-09 2016-06-09 Sensor trajectory planning for a vehicle
US15/178,120 2016-06-09
PCT/US2017/033152 WO2017213814A1 (en) 2016-06-09 2017-05-17 Sensor trajectory planning for a vehicle

Publications (2)

Publication Number Publication Date
KR20180123725A true KR20180123725A (ko) 2018-11-19
KR102107555B1 KR102107555B1 (ko) 2020-05-07

Family

ID=60573844

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187032217A KR102107555B1 (ko) 2016-06-09 2017-05-17 차량용 센서 궤적 플래닝

Country Status (6)

Country Link
US (2) US9880561B2 (ko)
EP (1) EP3423913B1 (ko)
JP (1) JP6717974B2 (ko)
KR (1) KR102107555B1 (ko)
CN (1) CN109074082B (ko)
WO (1) WO2017213814A1 (ko)

Families Citing this family (81)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10730404B2 (en) * 2016-04-22 2020-08-04 Sew-Eurodrive Gmbh & Co. Kg Method for operating a production plant comprising a vehicle and at least one charging point, and production plant having a vehicle for carrying out the method
US9880561B2 (en) * 2016-06-09 2018-01-30 X Development Llc Sensor trajectory planning for a vehicle
ES2903532T3 (es) 2016-06-10 2022-04-04 Univ Duke Planificación de movimiento para vehículos autónomos y procesadores reconfigurables de planificación de movimiento
JP6729146B2 (ja) * 2016-08-03 2020-07-22 コベルコ建機株式会社 障害物検出装置
US10678240B2 (en) * 2016-09-08 2020-06-09 Mentor Graphics Corporation Sensor modification based on an annotated environmental model
US10502574B2 (en) * 2016-09-20 2019-12-10 Waymo Llc Devices and methods for a sensor platform of a vehicle
US10346797B2 (en) * 2016-09-26 2019-07-09 Cybernet Systems, Inc. Path and load localization and operations supporting automated warehousing using robotic forklifts or other material handling vehicles
CN106896811B (zh) * 2016-12-22 2018-11-09 北京京东尚科信息技术有限公司 可移动装置的控制方法及系统
US10308430B1 (en) * 2016-12-23 2019-06-04 Amazon Technologies, Inc. Distribution and retrieval of inventory and materials using autonomous vehicles
US10585440B1 (en) 2017-01-23 2020-03-10 Clearpath Robotics Inc. Systems and methods for using human-operated material-transport vehicles with fleet-management systems
US11833684B2 (en) 2017-02-25 2023-12-05 Diligent Robotics, Inc. Systems, apparatus, and methods for robotic learning and execution of skills
US11148288B2 (en) * 2017-02-25 2021-10-19 Diligent Robotics, Inc. Systems, apparatus, and methods for robotic learning and execution of skills
JP2018203214A (ja) * 2017-06-09 2018-12-27 アイシン精機株式会社 駐車支援装置、駐車支援方法、運転支援装置、および運転支援方法
EP3413424B1 (de) * 2017-06-09 2020-12-23 Andreas Stihl AG & Co. KG Verfahren zum ermitteln einer information zum betreiben eines akkumulators, verfahren zum ermitteln von zeitdauern zum aufladen von verschiedenen akkumulatoren und elektrisches garten- und/oder forstgerätesystem
DE102017209838A1 (de) * 2017-06-12 2018-12-13 Krones Ag Behälterbehandlungsanlage zum Behandeln von Behältern
US20180370028A1 (en) * 2017-06-24 2018-12-27 Elizabeth Marie De Zulueta Autonomous Robotic Aide
JP2019059004A (ja) * 2017-09-28 2019-04-18 セイコーエプソン株式会社 ロボットシステム
CN111479662B (zh) * 2017-10-25 2023-07-07 Lg电子株式会社 学习障碍物的人工智能移动机器人及其控制方法
US10717384B2 (en) * 2017-10-25 2020-07-21 Pony Ai Inc. System and method for projecting trajectory path of an autonomous vehicle onto a road surface
US10816996B1 (en) * 2017-11-17 2020-10-27 Amazon Technologies, Inc. Techniques for contention management for mobile drive units
US20190179317A1 (en) * 2017-12-13 2019-06-13 Luminar Technologies, Inc. Controlling vehicle sensors using an attention model
KR102418451B1 (ko) * 2017-12-27 2022-07-07 주식회사 한화 로봇 제어 시스템
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
TWI822729B (zh) 2018-02-06 2023-11-21 美商即時機器人股份有限公司 用於儲存一離散環境於一或多個處理器之一機器人之運動規劃及其改良操作之方法及設備
US11256270B2 (en) * 2018-02-07 2022-02-22 Clearpath Robotics Inc. Communication systems for self-driving vehicles, and methods of providing thereof
US11163314B1 (en) 2018-02-27 2021-11-02 Amazon Technologies, Inc. Contention management for mobile drive units
WO2019183141A1 (en) 2018-03-21 2019-09-26 Realtime Robotics, Inc. Motion planning of a robot for various environments and tasks and improved operation of same
US11169536B2 (en) 2018-04-09 2021-11-09 SafeAI, Inc. Analysis of scenarios for controlling vehicle operations
US11625036B2 (en) 2018-04-09 2023-04-11 SafeAl, Inc. User interface for presenting decisions
US11467590B2 (en) 2018-04-09 2022-10-11 SafeAI, Inc. Techniques for considering uncertainty in use of artificial intelligence models
US10809735B2 (en) 2018-04-09 2020-10-20 SafeAI, Inc. System and method for a framework of robust and safe reinforcement learning application in real world autonomous vehicle application
US11561541B2 (en) * 2018-04-09 2023-01-24 SafeAI, Inc. Dynamically controlling sensor behavior
US10565718B2 (en) * 2018-04-18 2020-02-18 Faro Technologies, Inc. System and method of scanning an environment
CN108792384B (zh) * 2018-04-18 2019-04-26 北京极智嘉科技有限公司 搬运方法、搬运装置及搬运系统
US10759051B2 (en) * 2018-04-23 2020-09-01 General Electric Company Architecture and methods for robotic mobile manipulation system
CN110398955B (zh) * 2018-04-25 2023-03-21 陈晨 智能工厂内移动目标的移动方法及在公路上移动的方法
AU2018203338B2 (en) 2018-05-14 2020-06-25 Deutsche Post Ag Autonomous robot vehicle
US20220197298A1 (en) * 2018-06-11 2022-06-23 Jabil Inc. Apparatus, system, and method of docking for autonomous robot navigation
US11766785B2 (en) * 2018-06-29 2023-09-26 Noiseout, Inc. Automated testing system
US10946518B2 (en) 2018-07-24 2021-03-16 Invia Robotics, Inc. Spatiotemporal controller for controlling robot operation
WO2020028244A1 (en) * 2018-07-30 2020-02-06 Fedex Corporate Services, Inc. Enhanced systems, apparatus, and methods for improved automated and autonomous operation of logistics ground support equipment
JP7239291B2 (ja) * 2018-09-28 2023-03-14 株式会社小松製作所 作業車両の周辺監視システム及び作業車両の周辺監視方法
CN109678055A (zh) * 2018-11-07 2019-04-26 上海图森未来人工智能科技有限公司 移动吊装设备控制系统及方法、服务器、移动吊装设备
US20200169671A1 (en) * 2018-11-27 2020-05-28 GM Global Technology Operations LLC Method and apparatus for object detection in camera blind zones
US11045952B2 (en) 2018-11-28 2021-06-29 BITO Robotics, Inc. System and method for autonomously loading cargo into vehicles
US11835948B2 (en) * 2018-12-03 2023-12-05 Motional Ad Llc Systems and methods for improving vehicle operations using movable sensors
US10527706B1 (en) * 2019-02-19 2020-01-07 Great Wall Motor Company Limited Localization methods and systems for autonomous systems
JP6764138B2 (ja) * 2019-03-28 2020-09-30 日本電気株式会社 管理方法、管理装置、プログラム
CN111857112B (zh) * 2019-04-12 2023-11-14 广州汽车集团股份有限公司 一种汽车局部路径规划方法及电子设备
US11179850B2 (en) * 2019-04-24 2021-11-23 Intrinsic Innovation Llc Robot motion planning
US11623339B1 (en) * 2019-05-16 2023-04-11 Amazon Technologies, Inc. Portable robotic manipulation systems
CN110147963B (zh) * 2019-05-24 2021-11-05 中国船舶工业综合技术经济研究院 一种组立构件中小日程作业计划平衡制定方法及系统
US11634126B2 (en) 2019-06-03 2023-04-25 Realtime Robotics, Inc. Apparatus, methods and articles to facilitate motion planning in environments having dynamic obstacles
CN112978190B (zh) * 2019-06-29 2023-07-25 深圳市海柔创新科技有限公司 取货任务分配方法及其货品分拣系统
US11922361B2 (en) * 2019-07-26 2024-03-05 Fuji Corporation Distribution system
JP7395280B2 (ja) 2019-08-08 2023-12-11 三菱重工業株式会社 位置演算システム、位置演算方法および無人搬送車
WO2021041223A1 (en) 2019-08-23 2021-03-04 Realtime Robotics, Inc. Motion planning for robots to optimize velocity while maintaining limits on acceleration and jerk
CN110615227B (zh) * 2019-09-10 2021-08-06 灵动科技(北京)有限公司 自动搬运系统
US20210080970A1 (en) * 2019-09-16 2021-03-18 X Development Llc Using adjustable vision component for on-demand vision data capture of areas along a predicted trajectory of a robot
US11958183B2 (en) 2019-09-19 2024-04-16 The Research Foundation For The State University Of New York Negotiation-based human-robot collaboration via augmented reality
US11609580B2 (en) * 2019-10-17 2023-03-21 Tusimple, Inc. Workflow management system
JP2021099331A (ja) * 2019-12-20 2021-07-01 株式会社デンソー レーダ装置
TW202146189A (zh) 2020-01-22 2021-12-16 美商即時機器人股份有限公司 於多機器人操作環境中之機器人之建置
US11851310B2 (en) * 2020-04-13 2023-12-26 Hd Hyundai Xitesolution Co., Ltd. Autonomous forklift truck
JP7450297B2 (ja) * 2020-04-14 2024-03-15 リアルタイム ロボティクス, インコーポレーテッド センサーの配置を含むロボット操作環境の構成
DE102020210351A1 (de) * 2020-05-18 2021-11-18 Zf Friedrichshafen Ag Steuerung eines Fahrzeugs über Referenz-Sensordaten
DE102020207971A1 (de) 2020-06-26 2021-12-30 Rheinisch-Westfälische Technische Hochschule (Rwth) Aachen Verfahren zur Rückgewinnung von verbauten Leichtbauplatten
CN114076934A (zh) * 2020-08-12 2022-02-22 三赢科技(深圳)有限公司 校准设备及深度相机的校准方法
US20220057797A1 (en) * 2020-08-19 2022-02-24 United Parcel Service Of America, Inc. Bi-directional autonomous logistics vehicles
US11648965B2 (en) * 2020-09-28 2023-05-16 Argo AI, LLC Method and system for using a reaction of other road users to ego-vehicle actions in autonomous driving
SE2051562A1 (en) * 2020-12-28 2022-06-29 Husqvarna Ab Implement carrier
JP2024506611A (ja) 2021-02-08 2024-02-14 ディリジェント ロボティクス,インコーポレイテッド ナビゲーション及び操作機能を含む技能をロボティック学習及び実行するシステム、装置、及び方法
EP4313501A1 (en) * 2021-03-25 2024-02-07 ABB Schweiz AG Robotic system trajectory planning
CN113093671B (zh) * 2021-03-26 2022-05-17 中国第一汽车股份有限公司 一种车间交接区物流指示系统与agv信号交互方法及系统
CN113218403B (zh) * 2021-05-14 2022-09-09 哈尔滨工程大学 惯性视觉组合式定位的agv系统
US11787350B2 (en) * 2021-07-21 2023-10-17 Avraham Wingarten Roof mounted vehicle camera assembly
WO2023044356A1 (en) * 2021-09-16 2023-03-23 X Development Llc Learning from demonstration for determining robot perception motion
CN114137974A (zh) * 2021-11-26 2022-03-04 广州极飞科技股份有限公司 中耕控制方法、装置、系统和电子设备
CN114200939B (zh) * 2021-12-10 2024-02-27 江苏集萃智能制造技术研究所有限公司 一种机器人防碰撞路径规划方法
CN114193425B (zh) * 2022-02-18 2022-05-17 浙江博城机器人科技有限公司 一种基于视觉检测的巡检装置及方法
CN115063088B (zh) * 2022-08-16 2022-11-08 成都秦川物联网科技股份有限公司 用于物料运输控制的工业物联网系统及控制方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014237188A (ja) * 2013-06-07 2014-12-18 株式会社安川電機 ワーク検出装置、ロボットシステム、被加工物の製造方法及びワーク検出方法
JP2015230729A (ja) * 2014-06-03 2015-12-21 三菱電機株式会社 環境内の1組のセンサーの経路を計画する方法
US20160016311A1 (en) * 2014-07-16 2016-01-21 Google Inc. Real-Time Determination of Object Metrics for Trajectory Planning

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5170352A (en) 1990-05-07 1992-12-08 Fmc Corporation Multi-purpose autonomous vehicle with path plotting
WO2007012198A1 (en) 2005-07-26 2007-02-01 Macdonald, Dettwiler & Associates Inc. Guidance, navigation, and control system for a vehicle
US8108092B2 (en) * 2006-07-14 2012-01-31 Irobot Corporation Autonomous behaviors for a remote vehicle
US8972306B2 (en) 2007-08-31 2015-03-03 Raytheon Company System and method for sensor tasking
US9126525B2 (en) * 2009-02-27 2015-09-08 Magna Electronics Inc. Alert system for vehicle
DE102009030076A1 (de) * 2009-06-23 2010-12-30 Symeo Gmbh Abbildungsverfahren mittels synthetischer Apertur, Verfahren zur Bestimmung einer Relativgeschwindigkeit zwischen einem wellenbasierten Sensor und einem Objekt bzw. Vorrichtung zur Durchführung der Verfahren
WO2011106798A1 (en) * 2010-02-28 2011-09-01 Osterhout Group, Inc. Local advertising content on an interactive head-mounted eyepiece
JP2012247400A (ja) * 2011-05-31 2012-12-13 Toyota Motor Corp 自律移動システム、その制御方法及びプログラム
WO2012167301A1 (en) 2011-06-10 2012-12-13 Navisens Pty Ltd Positioning, tracking and trajectory estimation of a mobile object
US9488442B2 (en) * 2011-06-20 2016-11-08 Real Time Companies, LLC Anti-sniper targeting and detection system
US8912892B2 (en) * 2012-02-23 2014-12-16 California Institute Of Technology Autonomous and controllable systems of sensors and methods of using such systems
US20130321627A1 (en) * 2012-05-31 2013-12-05 John C. Turn, JR. Road departure sensing and intelligent driving systems and methods
US9122966B2 (en) * 2012-09-07 2015-09-01 Lawrence F. Glaser Communication device
US9251698B2 (en) 2012-09-19 2016-02-02 The Boeing Company Forest sensor deployment and monitoring system
US9427189B2 (en) * 2013-03-04 2016-08-30 Hello Inc. Monitoring system and device with sensors that are responsive to skin pigmentation
US8965561B2 (en) 2013-03-15 2015-02-24 Cybernet Systems Corporation Automated warehousing using robotic forklifts
US9319641B2 (en) 2013-07-24 2016-04-19 The Boeing Company Controlling movement of a camera to autonomously track a mobile object
GB2522327A (en) 2013-12-06 2015-07-22 Bae Systems Plc Determining routes for aircraft
US9098753B1 (en) 2014-04-25 2015-08-04 Google Inc. Methods and systems for object detection using multiple sensors
US9170116B1 (en) 2014-07-11 2015-10-27 Toyota Motor Engineering & Manufacturing North America, Inc. Method for generating accurate lane level maps
WO2016053438A2 (en) 2014-07-21 2016-04-07 King Abdullah University Of Science And Technology STRUCTURE FROM MOTION (SfM) PROCESSING FOR UNMANNED AERIAL VEHICLE (UAV)
US9465390B2 (en) 2014-11-11 2016-10-11 Google Inc. Position-controlled robotic fleet with visual handshakes
US9892296B2 (en) * 2014-11-12 2018-02-13 Joseph E. Kovarik Method and system for autonomous vehicles
KR101710104B1 (ko) 2014-11-14 2017-03-08 씨제이대한통운 (주) 지능형 무인 이/적재 시스템 및 이를 이용한 이/적재 방법
US10775505B2 (en) * 2015-01-30 2020-09-15 Trinamix Gmbh Detector for an optical detection of at least one object
EP3885217A1 (en) * 2015-02-10 2021-09-29 Mobileye Vision Technologies Ltd. Sparse map for autonomous vehicle navigation
US9592964B2 (en) * 2015-07-23 2017-03-14 Pinc Solutions System and method for determining and controlling status and location of an object
US9936133B2 (en) * 2015-08-19 2018-04-03 Harris Corporation Gimbaled camera object tracking system
CN105137994A (zh) * 2015-09-10 2015-12-09 珠海市一微半导体有限公司 机器人障碍物检测系统及方法
CN105259909B (zh) * 2015-11-08 2018-07-10 杨珊珊 基于无人飞行器的植被数据采集方法及采集装置
CN105549603B (zh) * 2015-12-07 2018-08-28 北京航空航天大学 一种多旋翼无人机的智能道路巡检控制方法
CN105573320A (zh) * 2015-12-30 2016-05-11 天津天瑞达自动化设备有限公司 自主物流机器人系统
US20190339688A1 (en) * 2016-05-09 2019-11-07 Strong Force Iot Portfolio 2016, Llc Methods and systems for data collection, learning, and streaming of machine signals for analytics and maintenance using the industrial internet of things
US9880561B2 (en) * 2016-06-09 2018-01-30 X Development Llc Sensor trajectory planning for a vehicle
WO2018019921A1 (en) * 2016-07-29 2018-02-01 Trinamix Gmbh Optical sensor and detector for optical detection
CN117310742A (zh) * 2016-11-16 2023-12-29 应诺维思科技有限公司 激光雷达系统和方法
WO2018196001A1 (en) * 2017-04-28 2018-11-01 SZ DJI Technology Co., Ltd. Sensing assembly for autonomous driving
US20180372875A1 (en) * 2017-06-27 2018-12-27 Uber Technologies, Inc. Sensor configuration for an autonomous semi-truck
US10921801B2 (en) * 2017-08-02 2021-02-16 Strong Force loT Portfolio 2016, LLC Data collection systems and methods for updating sensed parameter groups based on pattern recognition
US11579298B2 (en) * 2017-09-20 2023-02-14 Yujin Robot Co., Ltd. Hybrid sensor and compact Lidar sensor

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014237188A (ja) * 2013-06-07 2014-12-18 株式会社安川電機 ワーク検出装置、ロボットシステム、被加工物の製造方法及びワーク検出方法
JP2015230729A (ja) * 2014-06-03 2015-12-21 三菱電機株式会社 環境内の1組のセンサーの経路を計画する方法
US20160016311A1 (en) * 2014-07-16 2016-01-21 Google Inc. Real-Time Determination of Object Metrics for Trajectory Planning

Also Published As

Publication number Publication date
WO2017213814A1 (en) 2017-12-14
US20170357270A1 (en) 2017-12-14
EP3423913A1 (en) 2019-01-09
CN109074082A (zh) 2018-12-21
US9880561B2 (en) 2018-01-30
KR102107555B1 (ko) 2020-05-07
CN109074082B (zh) 2022-01-04
EP3423913A4 (en) 2019-11-13
JP6717974B2 (ja) 2020-07-08
US10754350B2 (en) 2020-08-25
JP2019516185A (ja) 2019-06-13
EP3423913B1 (en) 2022-02-23
US20180113468A1 (en) 2018-04-26

Similar Documents

Publication Publication Date Title
KR102107555B1 (ko) 차량용 센서 궤적 플래닝
US10108194B1 (en) Object placement verification
US10296995B2 (en) Dynamically maintaining a map of a fleet of robotic devices in an environment to facilitate robotic action
JP6931007B2 (ja) 協調的在庫監視
JP6801008B2 (ja) 在庫管理
US10265856B2 (en) Reorienting a distance sensor using an adjustable leveler
US9870002B1 (en) Velocity control of position-controlled motor controllers
EP3218776B1 (en) Position-controlled robotic fleet with visual handshakes
US9632504B1 (en) Robotic navigation based on building surface contours
US9823659B2 (en) Motor system for vehicle steering and locomotion

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant