KR20210090285A - 자율 주행 차량들에 대한 자동화된 성능 검사들 - Google Patents

자율 주행 차량들에 대한 자동화된 성능 검사들 Download PDF

Info

Publication number
KR20210090285A
KR20210090285A KR1020217021514A KR20217021514A KR20210090285A KR 20210090285 A KR20210090285 A KR 20210090285A KR 1020217021514 A KR1020217021514 A KR 1020217021514A KR 20217021514 A KR20217021514 A KR 20217021514A KR 20210090285 A KR20210090285 A KR 20210090285A
Authority
KR
South Korea
Prior art keywords
vehicle
performance tests
computing devices
computing device
data
Prior art date
Application number
KR1020217021514A
Other languages
English (en)
Other versions
KR102503572B1 (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 KR20210090285A publication Critical patent/KR20210090285A/ko
Application granted granted Critical
Publication of KR102503572B1 publication Critical patent/KR102503572B1/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/02Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0015Planning or execution of driving tasks specially adapted for safety
    • B60W60/0018Planning or execution of driving tasks specially adapted for safety by employing degraded modes, e.g. reducing speed, in response to suboptimal conditions
    • B60W60/00186Planning or execution of driving tasks specially adapted for safety by employing degraded modes, e.g. reducing speed, in response to suboptimal conditions related to the vehicle
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/10Path keeping
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/14Adaptive cruise control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/0205Diagnosing or detecting failures; Failure detection models
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/029Adapting to failures or work around with other constraints, e.g. circumvention by avoiding use of failed parts
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3407Route searching; Route guidance specially adapted for specific applications
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01MTESTING STATIC OR DYNAMIC BALANCE OF MACHINES OR STRUCTURES; TESTING OF STRUCTURES OR APPARATUS, NOT OTHERWISE PROVIDED FOR
    • G01M17/00Testing of vehicles
    • G01M17/007Wheeled or endless-tracked vehicles
    • G01M17/06Steering behaviour; Rolling behaviour
    • 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/0055Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots with safety arrangements
    • G05D1/0061Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots with safety arrangements for transition from automatic pilot to manual pilot and vice versa
    • 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/0055Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots with safety arrangements
    • G05D1/0077Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots with safety arrangements using redundant signals or controls
    • 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/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • 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
    • 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/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0019Control system elements or transfer functions
    • B60W2050/0026Lookup tables or parameter maps
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/0205Diagnosing or detecting failures; Failure detection models
    • B60W2050/021Means for detecting failure or malfunction
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/0205Diagnosing or detecting failures; Failure detection models
    • B60W2050/0215Sensor drifts or sensor failures
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/029Adapting to failures or work around with other constraints, e.g. circumvention by avoiding use of failed parts
    • B60W2050/0297Control Giving priority to different actuators or systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2554/00Input parameters relating to objects
    • B60W2554/20Static objects
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2556/00Input parameters relating to data
    • B60W2556/10Historical data
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2556/00Input parameters relating to data
    • B60W2556/40High definition maps

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Mathematical Physics (AREA)
  • Traffic Control Systems (AREA)
  • Navigation (AREA)
  • Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Game Theory and Decision Science (AREA)
  • Medical Informatics (AREA)
  • Electromagnetism (AREA)
  • Control Of Driving Devices And Active Controlling Of Vehicle (AREA)

Abstract

본 개시의 양태들은 차량(100)에 대한 검사들을 수행하기 위한 방법을 제공한다. 이와 관련하여, 차량의 복수의 검출 시스템의 검출 시스템에 대한 제1 검사 및 지도 데이터에 대한 제2 검사를 포함하는 복수의 성능 검사가 식별될 수 있다. 차량에 대한 시험 루트는 차량의 위치 및 복수의 성능 검사에 기초하여 결정될 수 있다. 센서 데이터가 차량의 복수의 검출 시스템으로부터 수신될 수 있으면서, 차량은 자율 주행 모드에서 시험 루트를 따라 제어될 수 있다. 동작 모드는 복수의 성능 검사의 결과들에 기초하여 선택될 수 있고, 차량은 선택된 동작 모드로 동작될 수 있다.

Description

자율 주행 차량들에 대한 자동화된 성능 검사들
본 출원은 2018년 12월 13일자로 출원된 미국 출원 제16/219,386호의 이익을 주장하며, 그 전체 개시가 본 명세서에 참조로 포함된다.
자율 주행 모드로 동작할 때 인간 운전자를 필요로 하지 않는 차량들과 같은 자율 주행 차량들은 한 위치로부터 다른 위치로 승객들 또는 물품들의 수송을 돕기 위해 사용될 수 있다. 자율 주행 차량의 중요한 컴포넌트는 지각 시스템이며, 이 지각 시스템은 차량이 카메라들, 레이더, 센서들, 및 다른 유사한 디바이스들을 사용하여 그것의 주변들을 지각하고 해석하는 것을 허용한다. 지각 시스템은 자율 주행 차량이 움직이고 있는 동안 다수의 작업을 실행하며, 이는 궁극적으로, 속도 증가, 속도 감소, 정지, 회전 등과 같은 결정들로 이어진다. 지각 시스템은 카메라들, 센서들, 및 글로벌 포지셔닝 디바이스들과 같은 복수의 검출 시스템을 포함할 수 있고, 이들은 예를 들어, 주차된 자동차들, 나무들, 건물들 등과 같은 그것의 주변 환경에 관한 이미지들 및 센서 데이터를 수집하고 해석한다.
본 개시의 양태들은 하나 이상의 컴퓨팅 디바이스를 포함하는 시스템을 제공하고, 이 하나 이상의 컴퓨팅 디바이스는: 차량의 복수의 검출 시스템의 검출 시스템에 대한 제1 검사 및 지도 데이터에 대한 제2 검사를 포함하는 복수의 성능 검사를 식별하고; 차량의 위치 및 복수의 성능 검사에 기초하여 복수의 도로 세그먼트를 선택하고- 복수의 도로 세그먼트 각각은 복수의 성능 검사 중 하나 이상을 수행하기 위해 선택됨 -; 복수의 도로 세그먼트를 연결하고 차량의 위치를 복수의 도로 세그먼트 중 하나에 연결함으로써 차량에 대한 시험 루트를 결정하고; 자율 주행 모드에서 시험 루트를 따라 차량을 제어하고; 차량을 제어하는 동안, 차량의 복수의 검출 시스템으로부터 센서 데이터를 수신하고; 수신된 센서 데이터에 기초하여 복수의 성능 검사를 수행하고; 복수의 성능 검사의 결과들에 기초하여 복수의 동작 모드로부터 차량에 대한 동작 모드를 선택하고; 선택된 동작 모드로 차량을 동작시키도록 구성된다.
복수의 도로 세그먼트는 제1 도로 세그먼트를 포함할 수 있고, 여기서 복수의 성능 검사 중 하나 이상은 제1 도로 세그먼트를 따라 검출가능한 하나 이상의 교통 특징 또는 정지 객체를 사용하여 수행될 수 있다. 복수의 도로 세그먼트는 복수의 성능 검사 중 하나 이상에 대해 요구되는 기동이 수행될 수 있는 제2 도로 세그먼트를 포함할 수 있다.
제1 검사는 검출된 교통 특징의 특성들을 이전에 검출된 교통 특징의 특성들과 비교하는 것을 포함할 수 있다. 제2 검사는 검출된 교통 특징의 위치를 지도 데이터 내의 검출된 교통 특징의 위치와 비교하는 것을 포함할 수 있다.
복수의 성능 검사는 차량의 컴포넌트에 대한 제3 검사를 추가로 포함할 수 있고, 제3 검사는 차량의 컴포넌트에 관련된 하나 이상의 측정치를 임계 측정치와 비교하는 것을 포함할 수 있다.
동작 모드는 결과들이 복수의 성능 검사의 임계 수를 만족시키는 것에 기초하여 선택될 수 있다. 동작 모드는 결과들이 복수의 성능 검사 중 하나 이상의 성능 검사 세트를 만족시키는 것에 기초하여 선택될 수 있다.
하나 이상의 컴퓨팅 디바이스는 복수의 성능 검사의 결과들에 기초하여 검출 시스템들 중 적어도 하나에 대한 하나 이상의 보정을 결정하도록 추가로 구성될 수 있다. 선택된 동작 모드로 동작시키는 것은 하나 이상의 보정을 사용하는 것을 포함할 수 있다.
하나 이상의 컴퓨팅 디바이스는 복수의 성능 검사의 결과들에 기초하여 지도 데이터를 업데이트하도록 추가로 구성될 수 있다. 선택된 동작 모드로 동작시키는 것은 업데이트된 지도 데이터를 사용하는 것을 포함할 수 있다.
선택된 동작 모드는 비활성 모드일 수 있다.
시스템은 차량을 추가로 포함할 수 있다.
본 개시는, 하나 이상의 컴퓨팅 디바이스에 의해, 차량의 복수의 검출 시스템의 검출 시스템에 대한 제1 검사 및 지도 데이터에 대한 제2 검사를 포함하는 복수의 성능 검사를 식별하는 것; 하나 이상의 컴퓨팅 디바이스에 의해, 차량의 위치 및 복수의 성능 검사에 기초하여 복수의 도로 세그먼트를 선택하는 것- 복수의 도로 세그먼트 각각은 복수의 성능 검사 중 하나 이상을 수행하기 위해 선택됨 -; 하나 이상의 컴퓨팅 디바이스에 의해, 복수의 도로 세그먼트를 연결하고 차량의 위치를 복수의 도로 세그먼트 중 하나에 연결함으로써 차량에 대한 시험 루트를 결정하는 것; 하나 이상의 컴퓨팅 디바이스에 의해, 자율 주행 모드에서 시험 루트를 따라 차량을 제어하는 것; 차량을 제어하는 동안, 하나 이상의 컴퓨팅 디바이스에 의해, 차량의 복수의 검출 시스템으로부터 센서 데이터를 수신하는 것; 하나 이상의 컴퓨팅 디바이스에 의해, 수신된 센서 데이터에 기초하여 복수의 성능 검사를 수행하는 것; 하나 이상의 컴퓨팅 디바이스에 의해, 복수의 성능 검사의 결과들에 기초하여 복수의 동작 모드로부터 차량에 대한 동작 모드를 선택하는 것; 및 하나 이상의 컴퓨팅 디바이스에 의해, 선택된 동작 모드로 차량을 동작시키는 것을 추가로 제공한다.
복수의 도로 세그먼트는 제1 도로 세그먼트를 포함할 수 있고, 여기서 복수의 성능 검사 중 하나 이상은 제1 도로 세그먼트를 따라 검출가능한 하나 이상의 교통 특징 또는 정지 객체를 사용하여 수행될 수 있다. 복수의 도로 세그먼트는 복수의 성능 검사 중 하나 이상에 대해 요구되는 기동이 수행될 수 있는 제2 도로 세그먼트를 포함할 수 있다.
이 방법은, 하나 이상의 컴퓨팅 디바이스에 의해, 복수의 성능 검사의 결과들에 기초하여 검출 시스템들 중 적어도 하나에 대한 하나 이상의 보정을 결정하는 단계를 추가로 포함할 수 있고, 선택된 동작 모드로 동작시키는 것은 하나 이상의 보정을 사용하는 것을 포함할 수 있다. 이 방법은, 하나 이상의 컴퓨팅 디바이스에 의해, 복수의 성능 검사의 결과들에 기초하여 지도 데이터를 업데이트하는 단계를 추가로 포함할 수 있고, 선택된 동작 모드로 동작시키는 것은 업데이트된 지도 데이터를 사용하는 것을 포함할 수 있다.
복수의 성능 검사는 규칙적인 간격으로 수행될 수 있다.
도 1은 본 개시의 양태들에 따른 예시적인 차량의 기능도이다.
도 2는 본 개시의 양태들에 따른 지도 데이터의 예시적인 표현이다.
도 3은 본 개시의 양태들에 따른 차량의 예시적인 외부 뷰이다.
도 4는 본 개시의 양태들에 따른 시스템의 예시적인 그림 도면이다.
도 5는 본 개시의 양태들에 따른 시스템의 예시적인 기능도이다.
도 6은 본 개시의 양태들에 따른 예시적인 상황이다.
도 7은 본 개시의 양태들에 따른 수집된 센서 데이터의 예들을 도시한다.
도 8은 본 개시의 양태들에 따른 수집된 컴포넌트 데이터의 예들을 도시한다.
도 9는 본 개시의 양태들에 따른 다른 예시적인 상황을 도시한다.
도 10은 본 개시의 양태들에 따른 예시적인 흐름도이다.
개요
본 기술은 풀 캘리브레이션(full calibration) 후에, 동작 전에, 또는 규칙적인 간격들로 수행될 차량에 대한 성능 검사들에 관한 것이다. 도로 상에서 차량을 동작시키기 전에, 인간 운전자는 미러들이 조정되고, GPS 시스템이 기능하고 있고, 스티어링 휠, 브레이크, 및 신호 라이트들과 같은 컴포넌트들이 응답하는 것을 확인하는 것과 같이, 차량의 다양한 시스템들 및 컴포넌트들을 검사할 수 있다. 마찬가지로, 자율 주행 차량의 다양한 시스템들은 또한 동작 전에, 특히 차량이 자율 모드로 동작되어야 할 때 검사될 필요가 있고, 여기서 차량의 시스템들에서의 문제들을 인지하기 위한 인간 운전자가 존재하지 않을 수 있다. 예를 들어, 차량이 과거에 풀 캘리브레이팅(fully calibrated)되었더라도, 차량의 지각 시스템 내의 센서는 예컨대 다른 도로 사용자 또는 클리너에 의해 이전 동작 동안 이동되었을 수 있거나, 온도, 습도 등과 같은 환경적 인자들에 의해 손상되었을 수 있다.
이와 같이, 예를 들어, 센서 검사, 지도 검사, 및/또는 컴포넌트 검사를 포함하는 복수의 성능 검사가 차량에 대해 수행될 수 있다. 센서 검사는 검출 정확도, 검출 해상도, 시야 등과 같은 주어진 센서 또는 검출 시스템의 기능 레벨을 결정하는 것을 포함할 수 있다. 지도 검사는 주어진 지리적 영역과 관련하여 지도 데이터의 정확도를 결정하는 것을 포함할 수 있다. 컴포넌트 검사는 타이어 압력, 타이어 정렬 등과 같은 주어진 컴포넌트의 기능 레벨을 결정하는 것을 포함할 수 있다. 복수의 성능 검사의 결과들은 안전 및 편안함과 같은 설정된 가이드라인들 내에 차량의 어떤 기능들이 있는지를 결정하기 위해 사용될 수 있다. 결과들은 또한 차량을 특정 동작 모드들로 지정하거나 클리어링(clear)하기 위해 사용될 수 있다.
복수의 성능 검사를 수행하기 위해, 하나 이상의 컴퓨팅 디바이스는 차량의 위치, 지도 데이터, 및 차량의 복수의 시스템에 대한 복수의 성능 검사에 기초하여 시험 루트를 결정할 수 있다. 시험 루트는 폐쇄형 루트이거나, 지정된 데포(depot) 또는 시험 센터를 포함할 필요가 없다.
차량의 컴퓨팅 디바이스들은 하나 이상의 컴포넌트를 사용하여 시험 루트를 따라 차량을 내비게이팅하고 복수의 검출 시스템을 사용하여 데이터를 수집할 수 있다. 데이터를 수집하는 것은 복수의 검출 시스템의 검출 시스템을 사용하여 시험 루트를 따라 하나 이상의 교통 특징 또는 정지 객체를 검출하는 것을 포함할 수 있다. 또한, 데이터를 수집하는 것은 차량의 컴포넌트에 관련된 하나 이상의 측정치를 검출하는 것을 포함할 수 있다.
시험 루트 동안 또는 차량이 시험 루트를 완료한 후에, 차량의 컴퓨팅 디바이스들은 수집된 데이터를 분석함으로써 복수의 성능 검사를 수행할 수 있다. 센서 검사의 경우, (위치, 배향, 형상, 컬러, 반사율 등과 같은) 검출된 교통 특징의 특성들은 이전에 검출된 또는 저장된 교통 특징의 특성들과 비교될 수 있다. 지도 검사의 경우, 검출된 교통 특징의 위치 또는 배향은 차량의 지도 데이터에서 이전에 검출되거나 저장된 교통 특징의 위치 또는 배향과 비교될 수 있다. 컴포넌트 검사에 대해, 차량의 컴포넌트에 관련된 하나 이상의 측정치는 임계 측정치와 비교될 수 있다.
어느 성능 검사들이 만족되었는지에 기초하는 것과 같이, 복수의 성능 검사로부터의 결과들에 기초하여, 차량의 컴퓨팅 디바이스들은 차량을 동작시키기 위한 동작 모드를 선택할 수 있다. 동작 모드들은, 예를 들어, 작업 지정들(승객 또는 비-승객 작업들), 또는 속도들, 거리, 또는 지리적 영역에 대한 제한들을 포함할 수 있다. 동작 모드들은 또한, 예를 들어, 차량이 임의의 다른 모드에 대해 클리어링되지 않는 경우에, 비활성 모드를 포함할 수 있다. 일부 구현들에서, 모드들은 플릿(fleet) 관리 시스템과 같은 원격 시스템에 의해 복수의 차량에 대해 선택될 수 있다. 차량은 그 후 복수의 성능 검사에 기초하여 특정 모드로 차량의 컴퓨팅 디바이스들에 의해 동작될 수 있다.
전술한 특징들은 자율 주행 차량들이 동작을 위해 신속하고 적절하게 준비되게 할 수 있다. 더 빠른 준비는, 수요가 변동하더라도, 차량들이 더 시기적절한 방식으로 사용자들에게 전송될 수 있다는 것을 의미한다. 그 결과, 자율 주행 차량들의 사용자들은 적시에 픽업될 수 있다. 게다가, 연료와 같은 더 적은 자원들이 서비스를 위한 자율 주행 차량의 준비시에 사용될 필요가 있는데, 이는 전체 비용을 감소시킬 수도 있다. 특징들은 또한 사용자들을 더 효율적이고 안전하게 서비스할 수 있는 복수의 모드에 대해 지정된 자율 주행 차량들의 전체 플릿의 관리를 허용한다.
예시적인 시스템들
도 1에 도시된 바와 같이, 본 개시의 일 양태에 따른 차량(100)은 다양한 컴포넌트들을 포함한다. 본 개시의 특정 양태들은 특정 타입들의 차량들과 관련하여 특히 유용하지만, 차량은 자동차들, 트럭들, 모터사이클들, 버스들, 레크리에이션 차량들(recreational vehicles) 등을 포함하지만 이에 제한되지 않는 임의의 타입의 차량일 수 있다. 차량은 하나 이상의 프로세서(120), 메모리(130) 및 범용 컴퓨팅 디바이스들에 전형적으로 존재하는 다른 컴포넌트들을 포함하는 컴퓨팅 디바이스(110)와 같은 하나 이상의 컴퓨팅 디바이스를 가질 수 있다.
메모리(130)는 프로세서(120)에 의해 실행되거나 또는 다른 방식으로 사용될 수 있는 명령어들(132) 및 데이터(134)를 포함하여, 하나 이상의 프로세서(120)에 의해 액세스가능한 정보를 저장한다. 메모리(130)는 컴퓨팅 디바이스 판독가능한 매체, 또는 하드 드라이브, 메모리 카드, ROM, RAM, DVD 또는 다른 광학 디스크들과 같은 전자 디바이스의 도움으로 판독될 수 있는 데이터를 저장하는 다른 매체뿐만 아니라 다른 기입 가능 및 판독 전용 메모리들을 포함하는, 프로세서에 의해 액세스가능한 정보를 저장할 수 있는 임의의 타입일 수 있다. 시스템들과 방법들은 전술한 것들의 상이한 조합들을 포함할 수 있으며, 그에 의해 명령어들과 데이터의 상이한 부분들이 상이한 타입의 매체에 저장된다.
명령어들(132)은 프로세서에 의해 직접적으로 실행될(기계 코드와 같은) 또는 간접적으로 실행될(스크립트들과 같은) 명령어들의 임의의 세트일 수 있다. 예를 들어, 명령어들은 컴퓨팅 디바이스 판독가능 매체 상에 컴퓨팅 디바이스 코드로서 저장될 수 있다. 그 점에서, 용어들 "명령어들"과 "프로그램들"은 본 명세서에서 상호 교환 가능하게 사용될 수 있다. 명령어들은 프로세서에 의한 직접 처리를 위한 오브젝트 코드 포맷(object code format)으로, 또는 요구에 따라 인터프리팅(interpret)되거나 미리 컴파일링(compile)되는 독립적인 소스 코드 모듈들의 스크립트들 또는 집합들을 포함하는 임의의 다른 컴퓨팅 디바이스 언어로 저장될 수도 있다. 명령어들의 기능들, 방법들 및 명령어들의 루틴들은 아래 더욱 상세히 설명된다.
데이터(134)는 명령어들(132)에 따라서 프로세서(120)에 의해 검색, 저장 또는 수정될 수 있다. 일 예로서, 메모리(130)의 데이터(134)는 미리 정의된 시나리오들을 저장할 수 있다. 주어진 시나리오는 객체의 타입, 차량에 대한 객체의 위치들의 범위뿐만 아니라, 자율 주행 차량이 객체 주위에서 기동할 수 있는지, 객체가 방향 지시등(turn signal)을 사용하고 있는지, 객체의 현재 위치에 관련된 교통 신호등(traffic light)의 상태, 객체가 정지 표지판(stop sign)에 접근하고 있는지 등과 같은 다른 요인들을 포함하는 시나리오 요건들의 세트를 식별할 수 있다. 요건들은 "우측 방향 지시등이 켜짐(right turn signal is on)" 또는 "우회전 전용 레인에 있음(in a right turn only lane)"과 같은 이산 값들, 또는 "차량(100)의 현재 경로로부터 30 내지 60도 오프셋되는 각도로 배향되는 방향을 가짐"과 같은 값들의 범위들을 포함할 수 있다. 일부 예들에서, 미리 결정된 시나리오들은 복수의 대상에 대해 유사한 정보를 포함할 수 있다.
하나 이상의 프로세서(120)는 상용화된 CPU들과 같은 임의의 종래의 프로세서들일 수 있다. 대안적으로, 하나 이상의 프로세서는 ASIC 또는 다른 하드웨어-기반 프로세서와 같은 전용 디바이스일 수 있다. 도 1이 컴퓨팅 디바이스(110)의 프로세서, 메모리, 및 다른 요소들이 동일한 블록 내에 있는 것으로 기능적으로 예시하지만, 프로세서, 컴퓨팅 디바이스, 또는 메모리는 동일한 물리적 하우징 내에 격납될 수 있거나 격납될 수 없는 다수의 프로세서, 컴퓨팅 디바이스들, 또는 메모리들을 실제로 포함할 수 있다는 것을 본 기술분야의 통상의 기술자는 이해할 것이다. 예로서, 내부 전자 디스플레이(152)는 고대역폭 또는 다른 네트워크 접속을 통해 컴퓨팅 디바이스(110)와 인터페이싱할 수도 있는 그 자신의 프로세서 또는 중앙 처리 유닛(central processing unit)(CPU), 메모리 등을 갖는 전용 컴퓨팅 디바이스에 의해 제어될 수도 있다. 일부 예들에서, 이 컴퓨팅 디바이스는 사용자의 클라이언트 디바이스와 통신할 수 있는 사용자 인터페이스 컴퓨팅 디바이스일 수 있다. 유사하게, 메모리는 컴퓨팅 디바이스(110)의 하우징과는 상이한 하우징 내에 위치되는 하드 드라이브 또는 다른 저장 매체일 수 있다. 따라서, 프로세서 또는 컴퓨팅 디바이스에 대한 언급들은 병렬로 동작할 수 있거나 동작하지 않을 수 있는 프로세서들 또는 컴퓨팅 디바이스들 또는 메모리들의 집합에 대한 언급들을 포함하는 것으로 이해될 것이다.
컴퓨팅 디바이스(110)는 전술된 프로세서 및 메모리와 같은 컴퓨팅 디바이스뿐만 아니라 사용자 입력(150)(예를 들어, 마우스, 키보드, 터치 스크린 및/또는 마이크로폰) 및 다양한 전자 디스플레이들(예를 들어, 스크린을 갖는 모니터 또는 정보를 디스플레이하도록 동작가능한 임의의 다른 전자 디바이스)과 관련하여 정상적으로 사용되는 모든 컴포넌트들을 가질 수 있다. 본 예에서, 차량은 정보 또는 시청각 경험들을 제공하기 위해 내부 전자 디스플레이(152)뿐만 아니라 하나 이상의 스피커(154)를 포함한다. 이와 관련하여, 내부 전자 디스플레이(152)는 차량(100)의 탑승공간(cabin) 내에 위치될 수도 있고, 정보를 차량(100) 내의 승객들에게 제공하기 위하여 컴퓨팅 디바이스(110)에 의해 사용될 수도 있다. 내부 스피커들 이외에, 하나 이상의 스피커(154)는 차량(100) 외부의 객체들에게 가청 통지들(audible notifications)을 제공하기 위해 차량의 다양한 위치들에 배열되는 외부 스피커들을 포함할 수 있다.
일 예에서, 컴퓨팅 디바이스(110)는 차량(100) 내에 통합되는 자율 주행 컴퓨팅 시스템(autonomous driving computing system)일 수 있다. 자율 주행 컴퓨팅 시스템은 차량의 다양한 컴포넌트들과 통신할 수 있다. 예를 들어, 컴퓨팅 디바이스(110)는, 차량의 탑승자로부터의 지속적인 또는 주기적인 입력을 필요로 하거나 요구하지 않는 자율 주행 모드에서, 메모리(130)의 명령어들(132)에 따라 차량(100)의 이동, 속도 등을 제어하기 위해, (차량의 제동을 제어하기 위한) 감속 시스템(160), (차량의 가속을 제어하기 위한) 가속 시스템(162), (휠들(wheels)의 배향 및 차량의 방향을 제어하기 위한) 스티어링 시스템(164), (방향 지시등들을 제어하기 위한) 시그널링 시스템(166), (차량을 어떤 위치로 또는 객체들 주위에서 내비게이팅하기 위한) 내비게이션 시스템(168), (차량의 포지션을 결정하기 위한) 포지셔닝 시스템(170), (차량의 환경에서 객체들을 검출하기 위한) 지각 시스템(172), 및 전력 시스템(174)(예를 들어, 배터리 및/또는 가스 또는 디젤 동력 엔진)과 같은 차량(100)의 다양한 시스템들과 통신할 수 있다. 다시금, 이러한 시스템이 컴퓨팅 디바이스(110) 외부에 있는 것으로 도시되지만, 실제로, 이러한 시스템은 차량(100)을 제어하기 위한 자율 주행 컴퓨팅 시스템으로서 컴퓨팅 디바이스(110)에 또한 통합될 수 있다.
컴퓨팅 디바이스(110)는 다양한 컴포넌트들을 제어함으로써 차량의 방향 및 속도를 제어할 수 있다. 예로서, 컴퓨팅 디바이스(110)는 지도 데이터 및 내비게이션 시스템(168)으로부터의 데이터를 사용하여 완전히 자율적으로 차량을 드롭-오프(drop-off) 위치로 내비게이팅할 수 있다. 컴퓨팅 디바이스들(110)은 안전하게 위치에 도달하는 것이 필요할 때 객체들을 검출하고 객체들에 응답하기 위해 차량의 위치 및 지각 시스템(172)을 결정하도록 포지셔닝 시스템(170)을 사용할 수 있다. 그렇게 하기 위해, 컴퓨팅 디바이스들(110)은 차량이 (예를 들어, 가속 시스템(162)에 의해 엔진에 제공되는 연료 또는 다른 에너지를 증가시킴으로써) 가속되게 하고, (예를 들어, 감속 시스템(160)에 의해 엔진에 공급되는 연료를 감소시키고, 기어를 변경하고, 및/또는 제동을 적용함으로써) 감속되게 하고, (예를 들어, 스티어링 시스템(164)에 의해 차량(100)의 전방 또는 후방 휠들을 돌림으로써) 방향을 변경하게 하며, (예를 들어, 시그널링 시스템(166)의 방향 지시등들을 점등함으로써) 이러한 변경들을 시그널링하게 할 수 있다. 따라서, 가속 시스템(162)과 감속 시스템(160)은 차량의 엔진과 차량의 휠들 사이의 다양한 컴포넌트들을 포함하는 구동렬(drivetrain)의 일부일 수 있다. 또한, 이러한 시스템들을 제어함으로써, 컴퓨팅 디바이스들(110)은 또한 차량을 자율적으로 조종하기 위해 차량의 구동렬을 제어할 수 있다.
일 예로서, 컴퓨팅 디바이스(110)는 차량의 속도를 제어하기 위해 감속 시스템(160) 및 가속 시스템(162)과 상호작용할 수 있다. 유사하게, 스티어링 시스템(164)은 차량(100)의 방향을 제어하기 위해 컴퓨팅 디바이스(110)에 의해 사용될 수 있다. 예를 들어, 승용차 또는 트럭과 같은 차량(100)이 도로 상에서의 사용을 위해 구성되면, 스티어링 시스템은 차량을 회전시키기 위해 휠들의 각도를 제어하는 컴포넌트들을 포함할 수 있다. 시그널링 시스템(166)은, 예를 들어, 필요할 때 방향 지시등들 또는 브레이크 라이트들을 점등함으로써 차량의 의도를 다른 운전자들 또는 차량들에 알리기 위해 컴퓨팅 디바이스(110)에 의해 사용될 수 있다.
내비게이션 시스템(168)은 한 위치로의 루트를 결정하고 따라가기 위해 컴퓨팅 디바이스(110)에 의해 사용될 수 있다. 이와 관련하여, 내비게이션 시스템(168) 및/또는 데이터(134)는 컴퓨팅 디바이스들(110)이 차량을 내비게이팅하거나 제어하는데 사용할 수 있는 지도 데이터, 예를 들어, 매우 상세한 지도들을 저장할 수 있다. 예로서, 이러한 지도는 도로들, 레인 마커들, 교차로들, 횡단보도들, 제한 속도들(speed limits), 교통 신호등들, 건물들, 표지판들, 실시간 또는 이력적 교통 정보, 초목(vegetation), 또는 다른 이러한 객체들의 형상 및 고도 및 정보를 식별할 수 있다. 레인 마커들은 실선 또는 파선 이중 또는 단일 레인 라인들(solid or broken double or single lane lines), 실선 또는 파선 레인 라인들, 반사기들 등과 같은 특징들을 포함할 수 있다. 주어진 레인은 좌측 및 우측 레인 라인들 또는 레인의 경계를 정하는 다른 레인 마커들과 연관될 수 있다. 따라서, 대부분의 레인들은 하나의 레인 라인의 좌측 에지 및 다른 레인 라인의 우측 에지에 의해 경계가 정해질 수 있다. 앞서 언급한 바와 같이, 지도 데이터는 과거의 유사한 시간들에서의 특정의 픽업 위치로부터 알려진 교통 또는 혼잡 정보 및/또는 통과 스케줄들(열차, 버스 등)을 저장할 수 있다. 이 정보는 심지어 컴퓨팅 디바이스들(110)에 의해 수신된 정보에 의해 실시간으로 업데이트될 수 있다.
도 2는 지도 데이터(200)의 예이다. 도시된 바와 같이, 지도 데이터(200)는 도로(210), 도로(220), 도로(230), 도로(240), 및 도로(250)의 형상, 위치, 및 다른 특성들을 포함한다. 지도 데이터(200)는 도로(210)에 대한 레인 라인(211)과 같은 레인 라인들 또는 레인 마커들을 포함할 수 있다. 레인 라인들은 또한 다양한 레인들을 정의할 수 있는데, 예를 들어, 레인 라인(211)은 도로(210)의 레인들(212, 214)을 정의한다. 레인 라인들 또는 마커들에 대한 대안으로서, 레인들은 또한 도로들(220, 230, 240, 250)과 같은 도로의 폭에 의해 추론될 수 있다. 지도 데이터(200)는 또한 각각의 레인에 대한 교통 방향 및 제한 속도들을 식별하는 정보뿐만 아니라 컴퓨팅 디바이스들(110)이 차량이 특정 타입의 기동을 완료하기 위한(즉, 회전을 완료하거나, 교통 레인 또는 교차로를 횡단 등을 하기 위한) 우선 통행권을 갖는지를 결정할 수 있게 하는 정보를 포함할 수 있다.
지도 데이터(200)는 또한 도로들(210, 220, 230, 240, 및 250) 사이의 관계 정보를 포함할 수 있다. 예를 들어, 지도 데이터(200)는 도로(210)가 교차로(219)에서 도로(220)와 교차한다는 것, 도로(220)가 교차로(229)에서 도로(230)와 교차한다는 것, 도로들(230, 240, 및 250)이 교차로(239)에서 교차한다는 것, 및 도로(250)가 교차로(259)에서 도로(210)와 교차한다는 것을 표시할 수 있다.
지도 데이터(200)는 다양한 특성들 및 상이한 의미론적 의미들을 갖는 도로들 상의 표지판들 및 마킹들을 추가로 포함할 수 있다. 도시된 바와 같이, 지도 데이터(200)는 도로(210)에 대한 교통 신호등(216) 및 도로(210)를 횡단하는 보행자 교차로(218)를 포함한다. 지도 데이터(200)는 또한 정지 표지판(260)을 포함한다. 지도 데이터(200)는 연석들, 수로들, 초목 등과 같은 다른 특징들을 추가로 포함할 수 있다.
또한, 지도 데이터(200)는 다양한 건물들 또는 구조물들(예컨대, 관심 지점들) 및 이러한 건물들 또는 구조물들의 타입을 포함할 수 있다. 도시된 바와 같이, 지도 데이터(200)는 도로(210) 상의 건물(270)을 도시한다. 예를 들어, 지도 데이터(200)는 빌딩(270)의 타입이 공항, 기차역, 경기장, 학교, 교회, 병원, 아파트 빌딩, 집 등인 것을 포함할 수 있다. 이와 관련하여, 건물(270)의 타입이, 카운티(county) 기록들과 같은, 관리 기록들로부터 수집될 수 있거나, 항공 이미지들을 검토한 후에 사람 조작자에 의해 수동으로 라벨링될 수 있다. 지도 데이터(200)는 입구들 및/또는 출구들의 위치들과 같은 빌딩(270)에 관한 추가 정보를 포함할 수 있다.
지도 데이터(200)는 또한 주차장(280)과 같은 미리 결정된 정지 영역들을 저장할 수 있다. 이와 관련하여, 이러한 영역들은 인간 조작자에 의해 손으로 선택되거나 또는 시간 경과에 따라 컴퓨팅 디바이스에 의해 학습될 수 있다. 지도 데이터(200)는 주차장(280)의 입구(282) 및 출구(284)의 위치와 같은 정지 영역들에 관한 추가 정보를 포함할 수 있고, 입구(282)는 도로(240)에 연결되는 반면, 출구(284)는 도로들(230 및 250)에 연결된다.
일부 예들에서, 지도 데이터(200)는 구역설정 정보를 추가로 포함할 수 있다. 예를 들어, 구역설정 정보는 카운티 기록들과 같은 관리 기록들로부터 획득될 수 있다. 이와 같이, 도로들에 관한 정보는 그것이 주거 구역, 학교 구역, 상업 구역 등 내에 있다는 표시를 포함할 수 있다.
지도 데이터는 도로들(210, 220, 230, 240, 및 250)의 GPS 좌표들, 교차로들(219, 229, 239, 및 259), 레인 라인(211), 레인들(212 및 214), 교통 신호등(216), 보행자 교차로(218), 정지 표지판(260), 건물(270) 및 그의 입구(272), 주차장(280) 및 그의 입구(282) 및 출구(284)와 같은 위치 좌표들(그 예들이 도 7에 도시됨)을 추가로 포함할 수 있다.
상세한 지도 데이터는 이미지-기반 지도로서 본 명세서에서 도시되지만, 지도 데이터는 전적으로 이미지 기반(예를 들어, 래스터(raster))일 필요가 없다. 예를 들어, 상세한 지도 데이터는 도로들, 레인들, 교차로들, 및 이러한 특징들 간의 접속들과 같은 정보의 하나 이상의 도로 그래프 또는 그래프 네트워크를 포함할 수 있다. 각각의 특징은 그래프 데이터로서 저장될 수 있으며 지리적 위치 및 이것이 다른 관계된 특징들에 링크되는지 여부, 예를 들어, 정지 신호는 도로 및 교차로 등에 링크될 수 있는지 여부와 같은 정보와 연관될 수 있다. 몇몇 예들에서, 연관된 데이터는 특정 도로 그래프 특징들의 효율적인 룩업을 허용하기 위해 도로 그래프의 그리드-기반 인덱스들을 포함할 수 있다.
지각 시스템(172)은 또한 다른 차량들, 도로 내의 장애물들, 교통 신호들, 표지판들, 나무들 등과 같은 차량 외부의 객체들을 검출하기 위한 하나 이상의 컴포넌트를 포함한다. 예를 들어, 지각 시스템(172)은 하나 이상의 LIDAR 센서(들)(180), 카메라 센서(들)(182), 및 RADAR 센서(들)(184)를 포함할 수 있다. 지각 시스템(172)은 SONAR 디바이스(들), 자이로스코프(들), 가속도계(들), 및/또는 컴퓨팅 디바이스들(110)에 의해 처리될 수 있는 데이터를 기록하는 임의의 다른 검출 디바이스들과 같은 다른 센서들을 포함할 수 있다. 지각 시스템의 센서들은 객체들 및 위치, 배향, 크기, 형상, 타입(예를 들어, 차량, 보행자, 자전거를 타는 사람 등), 방향(heading), 및 이동 속도 등과 같은 그것들의 특성들을 검출할 수 있다. 센서들로부터의 원시 데이터 및/또는 전술한 특성들은 정량화되거나 서술적 함수, 벡터, 및 또는 경계 상자(bounding box)로 배열될 수 있고, 그것이 지각 시스템(172)에 의해 생성될 때 주기적으로 그리고 연속적으로 컴퓨팅 디바이스들(110)에 추가 처리를 위해 전송될 수 있다. 이하에서 보다 상세히 논의되는 바와 같이, 컴퓨팅 디바이스들(110)은 포지셔닝 시스템(170)을 사용하여 차량의 위치를 결정하고 지각 시스템(172)을 사용하여 그 위치에 안전하게 도달해야 할 때 객체들을 검출하고 이에 응답할 수 있다.
예를 들어, 도 3은 차량(100)의 예시적인 외부 도면이다. 본 예에서, 루프-탑 하우징(310) 및 돔 하우징(312)은 LIDAR 센서뿐만 아니라, 다양한 카메라들 및 RADAR 유닛들을 포함할 수 있다. 또한, 차량(100)의 전방 단부에 위치한 하우징(320) 및 차량의 운전자 및 승객 측들에 있는 하우징들(330, 332) 각각은 LIDAR 센서를 격납할 수 있다. 예를 들어, 하우징(330)은 운전자 도어(350)의 전방에 위치한다. 차량(100)은 또한 차량(100)의 지붕 상에 또한 위치된 RADAR 유닛들 및/또는 카메라들을 위한 하우징들(340, 342)을 포함한다. 추가적인 RADAR 유닛들 및 카메라들(도시되지 않음)이 차량(100)의 전방 및 후방 단부들에 그리고/또는 루프 또는 루프-탑 하우징(310)을 따라 다른 포지션들에 위치될 수 있다. 차량(100)은 도어들(350, 352), 휠들(360, 362) 등과 같은 전형적인 승객 차량의 많은 특징들을 또한 포함한다.
일단 근처의 객체가 검출되면, 컴퓨팅 디바이스(110) 및/또는 지각 시스템(172)은 객체의 타입, 예를 들어, 교통 콘, 보행자, 차량(예를 들어, 승용차, 트럭, 버스 등), 자전거 등을 결정할 수 있다. 객체들은 객체의 크기, 객체의 속도(자전거들이 시간당 40 마일보다 빠르거나 시간당 0.1 마일보다 느리게 가는 경향이 없음), 자전거로부터 나오는 열(자전거들이 그들의 신체들로부터 열을 방출하는 탑승자를 갖는 경향이 있음) 등과 같은, 검출된 객체들의 다양한 특성들을 고려할 수 있는 다양한 모델들에 의해 식별될 수 있다. 또한, 객체는 차량 상에 보이는 번호판, 범퍼 스티커, 또는 로고들에 포함된 정보와 같은 객체의 특정 속성들에 기초하여 분류될 수 있다.
예를 들어, 지각 시스템(172)의 하나 이상의 센서에 의해 수집된 센서 데이터(그 예들이 도 7에 도시됨)는 차량(100)의 컴퓨팅 디바이스(110)의 데이터에 저장될 수 있다. 도 2를 참조하면, 차량(100)은 정지 표지판(260)을 지나서 주행했을 수 있고, LIDAR 센서(들)(180)에 의해 정지 표지판(260)의 검출된 값들을 메모리(130)의 데이터(134)에 저장했을 수 있다. 이 예에서, 검출된 값들은, 예를 들어, 차량(100)이 위치 [x_b, y_b](이는 예를 들어, 도로(230)에서 교차로(239) 쪽으로 주행하는 것에 대응할 수 있고 교차로(239)에 도달하기까지 10m 멀리 떨어져 있었음)에 있을 때, 정지 표지판(260)이 위치 [x4, y4]에 있고 차량(100)의 전방으로부터 30° 각도에 있는 것(이는 예를 들어, 차량(100)이 도로(230) 상에서 교차로(239) 쪽으로 주행하면서 정지 표지판(260)으로부터 8m 멀리 떨어져 있을 때에 대응할 수 있음)으로 검출되었다는 것을 포함할 수 있다. 예시적인 방법들과 관련하여 아래에 상세히 설명되는 바와 같이, 이러한 저장된 센서 데이터는 차량(100)의 다양한 시스템들에 대한 성능 검사들을 위해 사용될 수 있다. 다른 예들에서, 참조 차량의 지각 시스템에 의해 수집된 센서 데이터는 차량(100)의 컴퓨팅 디바이스(110)에 저장될 수 있다. 다른 예들에서, 이러한 센서 데이터는 서버 또는 저장 시스템 상에 원격으로 저장될 수 있다.
컴퓨팅 디바이스(110)는 차량(100)의 다양한 컴포넌트들에 대한 임계 값들(그 중 일부가 도 8에 도시됨)을 추가로 저장할 수 있다. 예를 들어, 컴퓨팅 디바이스(110)는 차량(100)의 타이어들에 대한 임계 최소 타이어 압력을 저장할 수 있다. 다른 예를 들면, 컴퓨팅 디바이스(110)는 차량(10)의 타이어들에 대한 임계 정렬 각도들을 저장할 수 있다. 또 다른 예를 들면, 컴퓨팅 디바이스(110)는 차량(100)의 브레이크에 대한 특정 속도에서의 임계 정지 거리를 저장할 수 있다.
차량(100)의 하나 이상의 컴퓨팅 디바이스(110)는 또한, 예를 들어, 무선 네트워크 접속들(156)을 사용하여 다른 컴퓨팅 디바이스들로 및 그로부터 정보를 수신 또는 전송할 수 있다. 무선 네트워크 접속들은, 예를 들어, BLUETOOTH(R), 블루투스 LE, LTE, 셀룰러, 니어 필드 통신들 등, 및 전술한 것들의 다양한 조합들을 포함할 수 있다. 도 4 및 도 5는, 제각기, 네트워크(460)를 통해 접속되는 복수의 컴퓨팅 디바이스(410, 420, 430, 440) 및 저장 시스템(450)을 포함하는 예시적인 시스템(400)의 그림 및 기능 도면들이다. 시스템(400)은 또한 차량(100), 및 차량(100)과 유사하게 구성될 수 있는 차량(100A)을 포함한다. 간단히 하기 위해 단지 소수의 차량들 및 컴퓨팅 디바이스들만이 묘사되지만, 전형적인 시스템은 상당히 더 많은 것을 포함할 수 있다.
도 4에 도시된 바와 같이, 컴퓨팅 디바이스들(410, 420, 430, 440) 각각은 하나 이상의 프로세서, 메모리, 데이터 및 명령어들을 포함할 수 있다. 이러한 프로세서들, 메모리들, 데이터 및 명령어들은 컴퓨팅 디바이스(110)의 하나 이상의 프로세서(120), 메모리(130), 데이터(134), 및 명령어들(132)과 유사하게 구성될 수 있다.
네트워크(460), 및 중간 노드들은 BLUETOOTH(R), 블루투스 LE와 같은 단거리 통신 프로토콜들, 인터넷, 월드 와이드 웹, 인트라넷들, 가상 사설 네트워크들, 광역 네트워크들, 로컬 네트워크들, 하나 이상의 회사 전용 통신 프로토콜들을 사용하는 사설 네트워크들, 이더넷, WiFi 및 HTTP 및 이들의 다양한 조합들을 포함하는 다양한 구성들 및 프로토콜들을 포함할 수 있다. 이러한 통신은 모뎀들 및 무선 인터페이스들과 같은, 다른 컴퓨팅 디바이스들로 그리고 그들로부터 데이터를 송신할 수 있는 임의의 디바이스에 의해 가능해질 수 있다.
일 예에서, 하나 이상의 컴퓨팅 디바이스(410)는 다른 컴퓨팅 디바이스들에 그리고 이들로부터 데이터를 수신하고, 처리하고, 송신하는 목적을 위해 네트워크의 상이한 노드들과 정보를 교환하는 복수의 컴퓨팅 디바이스를 갖는 서버, 예를 들어, 로드 밸런싱 서버 팜(load balanced server farm)을 포함할 수 있다. 예를 들어, 하나 이상의 컴퓨팅 디바이스(410)는 네트워크(460)를 통해 차량(100)의 하나 이상의 컴퓨팅 디바이스(110) 또는 차량(100A)의 유사한 컴퓨팅 디바이스뿐만 아니라 클라이언트 컴퓨팅 디바이스들(420, 430, 440)과 통신할 수 있는 하나 이상의 서버 컴퓨팅 디바이스를 포함할 수 있다. 예를 들어, 차량들(100 및 100A)은 서버 컴퓨팅 디바이스들에 의해 다양한 위치들로 배차(dispatch)될 수 있는 플릿의 일부일 수도 있다. 이와 관련하여, 무리의 차량들은 차량의 제각기 포지셔닝 시스템들에 의해 제공되는 서버 컴퓨팅 디바이스들 위치 정보를 주기적으로 송신할 수 있고, 하나 이상의 서버 컴퓨팅 디바이스는 차량들의 위치들을 추적할 수 있다.
앞서 언급된 바와 같이, 컴퓨팅 디바이스(110) 상의 다양한 교통 특징들을 검출하는 센서 데이터를 저장하기보다는, 이러한 센서 데이터가 서버 컴퓨팅 디바이스(410) 상에 추가적으로 또는 대안적으로 저장될 수 있다. 마찬가지로, 차량(100)의 컴포넌트들에 대한 임계 값들은 마찬가지로 서버 컴퓨팅 디바이스(410) 상에 저장될 수 있다.
또한, 서버 컴퓨팅 디바이스들(410)은 컴퓨팅 디바이스들(420, 430, 440)의 디스플레이들(424, 434, 444)과 같은 디스플레이 상에서 사용자(422, 432, 442)와 같은 사용자에게 정보를 송신하고 제시하기 위해 네트워크(460)를 사용할 수 있다. 이와 관련하여, 컴퓨팅 디바이스들(420, 430, 440)은 클라이언트 컴퓨팅 디바이스들로서 고려될 수 있다.
도 5에 도시된 바와 같이, 각각의 클라이언트 컴퓨팅 디바이스(420, 430, 440)는 사용자(422, 432, 442)가 사용하도록 의도된 개인용 컴퓨팅 디바이스일 수 있고, 그리고 하나 이상의 프로세서(예를 들어, 중앙 처리 유닛(CPU)), 데이터 및 명령어들을 저장하는 메모리(예를 들어, RAM 및 내부 하드 드라이브들), 디스플레이들(424, 434, 444)과 같은 디스플레이(예를 들어, 화면, 터치 스크린, 프로젝터, 텔레비전, 또는 정보를 디스플레이하도록 동작가능한 다른 디바이스를 갖는 모니터), 및 사용자 입력 디바이스들(426, 436, 446)(예를 들어, 마우스, 키보드, 터치 스크린 또는 마이크로폰)을 포함하여 개인용 컴퓨팅 디바이스와 관련하여 일반적으로 사용되는 컴포넌트들 모두를 가질 수 있다. 사용자(422, 432, 442)와 같은 사용자는 컴퓨팅 디바이스들(420, 430, 440)의 사용자 입력 디바이스들(426, 436, 446)을 사용하여, 픽업 또는 드롭-오프 요청들과 같은 정보를 서버 컴퓨팅 디바이스들(410)에 전송할 수 있다. 클라이언트 컴퓨팅 디바이스들은 비디오 스트림들을 기록하기 위한 카메라, 스피커들, 네트워크 인터페이스 디바이스, 및 이러한 요소들을 서로 접속시키기 위해 사용되는 모든 컴포넌트들을 또한 포함할 수 있다.
클라이언트 컴퓨팅 디바이스들(420, 430 및 440)은 각각 풀 사이즈의 개인용 컴퓨팅 디바이스를 포함할 수 있지만, 인터넷과 같은 네트워크를 통해 서버와 데이터를 무선으로 교환할 수 있는 모바일 컴퓨팅 디바이스들을 대안적으로 포함할 수 있다. 단지 예로서, 클라이언트 컴퓨팅 디바이스(420)는 인터넷 또는 다른 네트워크들을 통해 정보를 획득할 수 있는, 무선 인에이블 PDA, 태블릿 PC, 웨어러블 컴퓨팅 디바이스 또는 시스템, 또는 넷북과 같은 모바일 폰 또는 디바이스일 수 있다. 다른 예에서, 클라이언트 컴퓨팅 디바이스(430)는 도 4에서 손목 시계로서 도시된 웨어러블 컴퓨팅 시스템일 수 있다. 예로서, 사용자는 소형 키보드, 키패드, 마이크로폰을 사용하여, 카메라에 의한 시각적 신호들을 사용하여, 또는 터치 스크린으로 정보를 입력할 수도 있다.
일부 예들에서, 클라이언트 컴퓨팅 디바이스(440)는 사용자들(422 및 432)과 같은 사용자들에게 원격 조작자 서비스들을 제공하기 위해 관리자에 의해 사용되는 원격 조작자 워크스테이션일 수 있다. 예를 들어, 원격 조작자(442)는 이하에서 더 상세하게 설명되는 바와 같이 원격 조작자 워크스테이션(440)을 사용하여, 차량들(100 및 100A)의 안전한 운행 및 사용자들의 안전을 보장하게 하기 위해 그 각각의 클라이언트 컴퓨팅 디바이스들 또는 차량들(100 또는 100A)을 통한 사용자들과의 전화 호출 또는 오디오 접속을 통해 통신할 수 있다. 단일 원격 조작자 워크 스테이션(440)만이 도 4 및 도 5에 도시되어 있지만, 임의의 수의 이러한 워크 스테이션이 전형적인 시스템에 포함될 수 있다.
저장 시스템(450)은 이하에서 더 상세하게 설명되는 바와 같이 다양한 타입들의 정보를 저장할 수 있다. 이 정보는, 본 명세서에서 설명되는 특징들 중 일부 또는 전부를 수행하기 위해, 하나 이상의 서버 컴퓨팅 디바이스(410)와 같은 서버 컴퓨팅 디바이스에 의해 검색되거나 아니면 액세스될 수 있다. 예를 들어, 정보는 사용자를 하나 이상의 서버 컴퓨팅 디바이스에게 식별하기 위하여 사용될 수 있는 크리덴셜들(credentials)(예를 들어, 전통적인 단일-인자 인증(single-factor authentication)의 경우에서와 같은 사용자 명칭 및 패스워드(password)뿐만 아니라, 무작위적 식별자들, 생체계측들 등과 같은 멀티-인자 인증들에서 전형적으로 사용되는 다른 타입들의 크리덴셜들)과 같은 사용자 계정 정보를 포함할 수도 있다. 사용자 계정 정보는 또한 사용자 명칭, 연락처 정보, 사용자의 클라이언트 컴퓨팅 디바이스(또는 다수의 디바이스가 동일한 사용자 계정과 함께 사용되는 경우 디바이스들)의 식별 정보뿐만 아니라 연령 정보, 건강 정보, 및 이하 논의되는 바와 같이 과거에 사용자가 차량들에 타거나 내리는 데에 얼마나 오래 걸리는지에 관한 사용자 이력 정보와 같은 개인 정보를 포함할 수 있다.
저장 시스템(450)은 위치들 사이의 루트들을 생성하고 평가하기 위한 라우팅 데이터(routing data)를 또한 저장할 수 있다. 예를 들어, 라우팅 정보는 차량이 제1 위치에서 제2 위치에 도달하는데 얼마나 오래 걸릴지를 추정하기 위해 사용될 수 있다. 이와 관련하여, 라우팅 정보는 반드시 위에서 설명된 상세한 지도 데이터(200)만큼 특정한 것은 아니지만, 도로들뿐만 아니라 방향(일방, 양방 등), 배향(북쪽, 남쪽 등), 제한 속도들과 같은 해당 도로에 관한 정보를 포함하는 지도 데이터뿐만 아니라, 예상된 교통 조건들을 식별하는 교통 정보 등을 포함할 수 있다.
앞서 언급된 바와 같이, 컴퓨팅 디바이스(110) 또는 서버 컴퓨팅 디바이스(410) 상의 다양한 교통 특징들을 검출하는 센서 데이터를 저장하기보다는, 이러한 센서 데이터가 저장 시스템(450) 상에 추가적으로 또는 대안적으로 저장될 수 있다. 마찬가지로, 차량(100)의 컴포넌트들에 대한 임계 값들은 마찬가지로 저장 시스템(450) 상에 저장될 수 있다.
저장 시스템(450)은 또한 사용자에게 디스플레이하기 위해 클라이언트 컴퓨팅 디바이스들에 제공될 수 있는 정보를 저장할 수 있다. 예를 들어, 저장 시스템(450)은 주어진 픽업 또는 드롭-오프 위치에 대해 차량이 정지할 가능성이 있는 영역을 결정하기 위한 미리 결정된 거리 정보를 저장할 수 있다. 저장 시스템(450)은 또한 그래픽들, 아이콘들 및 이하에서 논의되는 바와 같이 사용자에게 디스플레이될 수 있는 다른 아이템들을 저장할 수 있다.
메모리(130)와 마찬가지로, 저장 시스템(450)은, 하드 드라이브, 메모리 카드, ROM, RAM, DVD, CD-ROM, 기입 가능 및 판독 전용 메모리들과 같은, 서버 컴퓨팅 디바이스들(410)에 의해 액세스가능한 정보를 저장할 수 있는 임의의 타입의 컴퓨터화된 저장 디바이스일 수 있다. 또한, 저장 시스템(450)은 동일한 또는 상이한 지리적 위치들에 물리적으로 위치될 수 있는 복수의 상이한 저장 디바이스들 상에 데이터가 저장되는 분산형 저장 시스템을 포함할 수 있다. 저장 시스템(450)은 도 4에 도시된 바와 같이 네트워크(460)를 통해 컴퓨팅 디바이스들에 접속될 수 있고 및/또는 컴퓨팅 디바이스들(110, 410, 420, 430, 440 등) 중 임의의 것에 직접 접속되거나 그에 통합될 수 있다.
예시적인 방법들
도면들에 예시되고 전술한 시스템들에 더하여, 다양한 동작들이 이제 설명될 것이다. 다음의 동작들은 이하 설명되는 정밀한 순서로 수행될 필요가 없다는 것을 이해해야 한다. 오히려, 다양한 단계들은 상이한 순서로 또는 동시에 처리될 수 있고, 단계들은 또한 추가되거나 생략될 수 있다.
도 6은 차량(100)에 대해 복수의 성능 검사를 수행하기 위한 예시적인 상황(600)을 도시한다. 도 6의 다양한 특징들은 일반적으로 도 2의 지도 데이터(200)에 도시되고 그와 같이 라벨링된 특징들의 형상, 위치 및 다른 특성들에 대응할 수 있다. 다양한 도로 사용자들 및 다른 객체들을 포함하는 도 6의 추가 특징들이 아래에 상세히 설명된다. 이러한 예들은 예증 목적들을 위해 유용하지만, 이들이 제한적인 것으로 간주되어서는 안 된다.
도 6에 도시된 바와 같이, 차량(100)은 도로(210)의 레인(212)에서 현재 연석 쪽에 주차되어, 도로에서의 안전한 동작을 보장하기 위해, 차량(100)은 그의 시스템들에 대해 성능 검사들을 수행할 필요가 있을 수 있다. 이와 관련하여, 차량(100)은 매일 또는 매주, 이동한 킬로미터들의 미리 결정된 수 또는 완료된 트립(trip)들의 수들마다, 또는 법률에 의해 규정되는 일부 빈도마다 같이, 정기적으로 그 시스템들에 대해 성능 검사들을 수행하도록 스케줄링될 수 있다. 예를 들어, 이전 날 동안, 차량(100)은 다수의 트립을 완료했을 수 있고, 이러한 트립들을 완료하면, 차량(100)은 레인(212)에서 연석 옆 도로변에 주차했다. 현재 요일에, 더 많은 트립을 가기 전에, 차량(100)은 먼저 그것의 다양한 시스템들에 대해 복수의 성능 검사를 수행할 수 있다. 일 예에서, 일부 타입의 성능 검사는 다른 성능 검사보다 높은 빈도로 수행될 수 있다. 다른 예에서, 성능 검사들의 빈도는 차량의 타입에 의존할 수 있다.
차량에 대해 복수의 성능 검사를 수행하기 위해, 시험 루트가 결정될 수 있다. 이와 관련하여, 컴퓨팅 디바이스(110)는 차량의 위치, 지도 데이터, 및 수행될 성능 검사들의 타입들에 기초하여 시험 루트를 결정할 수 있다. 예를 들어, 컴퓨팅 디바이스(110)는 차량(100)이 현재 교차로(219) 근처의 레인(212) 내의 연석 옆에 주차되어 있다고 결정하고, 지도 데이터(200)에 기초하여, 차량(100)이 단지 이러한 시험들을 수행하기 위해 지정된 데포 또는 시험 센터로 주행할 필요가 없도록 근처의 시험 루트를 결정할 수 있다. 이것은 지정된 시험 센터에 대한 장거리 운전으로 차량(100)을 동작시키는 위험 대신에, 성능 검사들이 가능한 한 빨리 수행되는 것을 보장하고, 연료를 포함하는 자원들의 더 효율적인 사용을 보장한다.
컴퓨팅 디바이스(110)는 복수의 성능 검사를 완료하기 위해 수행될 필요가 있는 성능 검사들의 타입들에 추가로 기초하여 시험 루트를 결정할 수 있다. 예를 들어, 각각의 요구되는 성능 검사의 타입 및 각각의 요구되는 성능 검사에 대한 빈도를 포함하는 요구되는 성능 검사들의 리스트가 컴퓨팅 디바이스(110) 상에 저장될 수 있다. 추가적으로 또는 대안적으로, 요구되는 성능 검사들의 리스트는 컴퓨팅 디바이스(110)에 의해 액세스가능한 서버 컴퓨팅 디바이스(410) 및/또는 저장 시스템(450) 상에 저장될 수 있다. 예를 들어, 요구되는 성능 검사들의 리스트는 "저장된 교통 신호등 검출을 사용하는 센서 검사를 24시간당 적어도 1회 수행", "지도 데이터에 저장된 정지 표지판을 사용하는 지도 검사를 1개월당 적어도 1회 수행", "모든 4개의 타이어에 대해 컴포넌트 검사를 1주일에 적어도 1회 수행" 등과 같은 아이템들을 포함할 수 있다. 일 양태에서, 컴퓨팅 디바이스(110)는 지도 데이터 및 저장된 센서 데이터를 사용하여, 복수의 도로 세그먼트와 같은, 복수의 세그먼트를 선택할 수 있고, 여기서 복수의 도로 세그먼트 각각은 요구되는 성능 검사들 중 하나 이상을 수행하기 위해 선택된다. 컴퓨팅 디바이스(110)는 이어서 복수의 도로 세그먼트를 연결하고, 차량이 복수의 성능 검사를 수행할 수 있게 하기 위한 시험 루트를 결정하기 위해 차량의 위치를 복수의 도로 세그먼트 중 하나에 연결할 수 있다.
예를 들어, 센서 검사를 위해, 컴퓨팅 디바이스(110)는 센서 데이터가 교통 특징들 또는 정지 객체들의 이전 검출들의 저장된 값들과 비교하기 위해 수집될 수 있도록 시험 루트에 대한 세그먼트를 선택할 수 있다. 예를 들어, 도 6에 도시된 바와 같이, 컴퓨팅 디바이스(110)는 차량(100) 근처의 교통 신호등(216) 및 보행자 교차로(218)가 차량(100) 근처의 이전에 검출된 교통 특징들로서 저장되어 있다고 결정할 수 있다. 이와 같이, 하나 이상의 검출 시스템에 대한 센서 검사는 새롭게 검출된 값들을 이러한 저장된 값들과 비교함으로써 수행될 수 있다. 따라서, 컴퓨팅 디바이스(110)는 차량(100)의 현재 위치에서 시작하는 세그먼트(610) 및 레인(212)으로부터 도로(220)로의 우회전이 센서 검사를 수행하기 위해 사용될 수 있다고 결정할 수 있다.
지도 검사를 위해, 컴퓨팅 디바이스(110)는 지도 데이터 내의 교통 특징들 또는 정지 객체들의 저장된 위치들 및/또는 배향들과 비교하기 위해 센서 데이터가 수집될 수 있도록 시험 루트에 대한 세그먼트를 선택할 수 있다. 예를 들어, 도 6에 도시된 바와 같이, 컴퓨팅 디바이스(110)는 정지 표지판(260)이 교통 특징으로서 지도 데이터(200)에 저장되어 있다고 결정할 수 있다. 이와 같이, 내비게이션 시스템에 저장된 지도 데이터(200)에 대한 지도 검사는 정지 표지판(260)의 새롭게 검출된 위치 및 배향을 지도 데이터(200) 내의 정지 표지판(260)의 저장된 위치 및/또는 배향과 비교함으로써 수행될 수 있다. 따라서, 컴퓨팅 디바이스(110)는 정지 표지판(260) 근처의 도로(230)의 부분을 포함하는 세그먼트(640)가 지도 검사를 수행하기 위해 사용될 수 있다고 결정할 수 있다.
컴포넌트 검사를 위해, 컴퓨팅 디바이스(110)는 특정 차량 기동이 수행될 수 있는 시험 루트에 대한 세그먼트를 선택할 수 있다. 예를 들어, 도 6에 도시된 바와 같이, 컴퓨팅 디바이스(110)는 교차로(229)에서 좌회전이 수행될 수 있다고 결정할 수 있다. 이와 같이, 브레이크, 휠 정렬, 및 좌측 방향 지시등에 대한 컴포넌트 검사는 차량(100)이 좌회전을 수행하는 동안 교차로(229)에서 수행될 수 있다. 따라서, 컴퓨팅 디바이스(110)는 도로(220)의 부분을 포함하는 세그먼트(620) 및 도로(230)에 대한 교차로(229)에서의 좌회전이 컴포넌트 검사를 수행하기 위해 사용될 수 있다고 결정할 수 있다.
일부 경우들에서, 컴퓨팅 디바이스(110)는 특정 타입의 성능 검사를 수행하기 위해 하나보다 많은 세그먼트가 필요하다고 결정할 수 있다. 이와 관련하여, 인간 조작자는 수동으로 시험 루트를 위한 아이템들의 리스트를 가질 수 있다. 대안적으로 또는 추가적으로, 시험 루트에 필요한 아이템들의 리스트는 컴퓨팅 디바이스들(110) 상에 저장될 수 있고/있거나, 컴퓨팅 디바이스(110)에 의해 액세스가능한 서버 컴퓨팅 디바이스(410) 및/또는 저장 시스템(450) 상에 저장될 수 있다. 예를 들어, 시험 루트에 필요한 아이템들의 리스트는 "시험 루트 상의 5개 이상의 교통 신호등", "시험 루트 상의 1개의 멀티포인트 턴(multipoint turn)" 등과 같은 아이템들을 포함할 수 있다. 예를 들어, 도 6에 도시된 바와 같이, 컴퓨팅 디바이스(110)는 후진 신호에 대한 컴포넌트 검사가 백-인(back-in) 또는 병렬 주차 또는 멀티-포인트 턴들과 같은 기동들을 필요로 한다고 결정할 수 있다. 따라서, 컴퓨팅 디바이스는 주차장(280)을 포함하는 세그먼트(650)가 후진 신호에 대한 컴포넌트 검사를 수행하기 위해 사용될 수 있다고 결정할 수 있다.
다른 경우들에서, 성능 검사의 각각의 타입에 대해 선택된 시험 루트들의 세그먼트들은 동일하거나 중첩된 부분들을 가질 수 있거나, 환언하면, 주어진 세그먼트가 다수의 타입의 성능 검사들을 수행하기 위해 사용될 수 있다. 예를 들어, 센서 검사에 더하여, 교통 신호등(216) 및 보행자 교차로(218)와 같은 교통 특징들의 위치 및/또는 배향이 지도 데이터(200)에 저장되기 때문에, 세그먼트(610)가 또한 지도 검사를 위해 사용될 수 있다. 다른 예를 들면, 세그먼트(610)는 또한 브레이크, 휠 정렬 및 우측 방향 지시등에 대한 컴포넌트 검사를 위해 사용될 수 있다.
컴퓨팅 디바이스(110)는 특정 타입들의 성능 검사들을 위해 선택된 다양한 세그먼트들을 연결하는 시험 루트의 추가적인 세그먼트들을 선택할 수 있다. 예를 들어, 컴퓨팅 디바이스(110)는 세그먼트(620)와 세그먼트(640)를 연결하기 위해 세그먼트(630)가 필요할 수 있다고 결정할 수 있다. 이와 같이, 예시적인 시험 루트는 세그먼트들(610, 620, 630, 640 및 650)을 포함할 수 있다.
또한, 적용가능한 경우, 컴퓨팅 디바이스(110)는 시험 루트의 각각의 세그먼트로부터의 센서 데이터를 사용하여 수행될 대응하는 또는 연관된 성능 검사들을 저장할 수 있다. 예를 들어, 컴퓨팅 디바이스(110)는 세그먼트(610)를 센서 검사, 교통 신호등(216), 보행자 교차로(218)를 사용하는 지도 검사, 및 휠 정렬 및 우측 방향 지시등에 대한 컴포넌트 검사와 연관시킬 수 있다. 다른 예를 들면, 컴퓨팅 디바이스(110)는 세그먼트(620)를 좌측 방향 지시등 및 휠 정렬에 대한 컴포넌트 검사와 연관시킬 수 있다. 또 다른 예를 들면, 컴퓨팅 디바이스(110)는 세그먼트(640)를 정지 표지판(260)을 사용하는 지도 검사 및 센서 검사와 연관시킬 수 있다. 또 다른 예를 들면, 컴퓨팅 디바이스(110)는 어떠한 검사도 세그먼트(630)와 연관시키지 않을 수 있다.
컴퓨팅 디바이스(110)는 시험 루트들에 대한 추가적인 요건들에 추가로 기초하여 시험 루트를 결정할 수 있다. 하나의 예시적인 요건은 시험 루트의 하나 이상의 세그먼트가 임계 트래픽 볼륨 미만을 가져야 한다는 것일 수 있다. 이와 관련하여, 컴퓨팅 디바이스(110)는 데이터베이스로부터 이력 또는 실시간 트래픽 데이터를 수신할 수 있다. 다른 예시적인 요건은 루트의 하나 이상의 세그먼트가 임계 제한 속도 미만 또는 초과의 제한 속도를 가져야 한다는 것일 수 있다. 이와 관련하여, 컴퓨팅 디바이스(110)는 지도 데이터(200)에 기초하여 다양한 도로들의 제한 속도들을 결정할 수 있다. 또 다른 예시적인 요건은 루트의 하나 이상의 세그먼트가 스쿨 존과 같은 특정 영역들에서 수행되지 않아야 한다는 것일 수 있다. 이와 관련하여, 컴퓨팅 디바이스(110)는 지도 데이터(200)에 기초하여 구역 정보를 결정할 수 있다. 또 다른 예시적인 요건은 특정 타입들의 기동들이 주차장에서 수행되어야 한다는 것일 수 있다. 예를 들어, 도 6에 도시된 바와 같이, 멀티-포인트 턴 기동들이 또한 도로(230) 상에서 수행될 수 있지만, 주차장(280)은 주차장들에서 멀티-포인트 턴들이 이루어져야 한다는 요건에 기초하여 선택될 수 있다. 추가적인 예시적인 요건들은 시험 루트가 다수의 별개의 교통 신호등, 멀티포인트 턴들을 수행하기 위한 하나 이상의 막다른길(cul-de-sac), 및 차량(100)에 대한 지정된 데포 또는 시험 센터에 저장된 교통 특징을 포함해야 한다는 것일 수 있다.
시험 루트는 폐쇄 루프일 필요는 없다. 예를 들어, 도 6에 도시된 바와 같이, 컴퓨팅 디바이스(110)는 시험 루트의 시작으로 복귀하는 대신에 세그먼트(650)의 끝에서 다음 세그먼트로 가기로 결정할 수 있다. 다른 예들에서, 시험 루트는 폐쇄 루프일 수 있고, 예를 들어, 컴퓨팅 디바이스(110)는 세그먼트(650)의 끝을 세그먼트(610)의 시작에 다시 연결하는 추가 세그먼트를 결정할 수 있다. 시험 루트가 폐쇄 루프인 예들에서, 복수의 성능 검사는 더 많은 센서 데이터 세트를 수집하기 위해 반복될 수 있고, 이는 예를 들어, 더 정확한 결과들을 획득하기 위해 평균화될 수 있다.
시험 루트는 시험 루트가 전술한 검사들을 수행하기 위해 나중에 차량에 의해 다시 사용될 수 있도록 저장될 수 있다. 예를 들어, 전술한 시험 루트는 저장될 수 있고, 복수의 성능 검사가 다시 수행될 필요가 있을 때 차량(100)이 영역 주위에 있게 되는 경우, 컴퓨팅 디바이스(110)는 새로운 시험 루트를 결정하는 대신에, 저장된 시험 루트를 단순히 사용할 수 있다. 다른 예를 들면, 성능 검사들이 다시 수행될 필요가 있는 것에 기초하여, 컴퓨팅 디바이스(110)는 저장된 시험 루트의 세그먼트들 전부가 아닌 일부를 사용할 수 있다.
일단 시험 루트가 결정되면, 컴퓨팅 디바이스(110)는 시험 루트를 따라 주행하도록 차량(100)을 제어할 수 있다. 그렇게 하는 동안, 지각 시스템(172) 및/또는 컴퓨팅 디바이스들(110)은 전술한 성능 검사들을 수행하기 위해 센서 데이터 및 컴포넌트 데이터를 포함하는 시험 루트 상에 있는 동안 데이터를 수집할 수 있다. 예를 들어, 도 7은 차량(100)이 도 6에 도시된 시험 루트를 따라 주행하는 동안 지각 시스템(172) 내의 다양한 센서들에 의해 수집된 예시적인 센서 데이터(700)를 도시한다. 다른 예를 들면, 도 8은 차량(100)이 도 6에 도시된 시험 루트를 따라 주행하는 동안 다양한 컴포넌트들로부터 수집된 예시적인 컴포넌트 데이터(800)를 도시한다.
도 6 및 도 7을 참조하면, 수집된 센서 데이터는 교통 신호등(216), 보행자 교차로(218), 건물(270), 정지 표지판(260), 및 주차장(280)과 같은 지속적인 교통 특징들 또는 정지 객체들에 대한 데이터를 포함할 수 있다. 도 7에 도시된 바와 같이, 센서 데이터는 각각의 교통 특징 또는 객체의 검출된 위치 및 배향은 물론, 그 특징 또는 객체에 대한 센서 데이터가 취해질 때의 차량(100)의 위치와 같은 정보를 포함할 수 있다. 예를 들어, 시험 루트 상에 있는 동안, 차량(100)이 위치 [x_a, y_a]에 있을 때, 차량(100)의 LIDAR 센서(들)(180)는 위치 [x1, y1]에 그리고 차량(100)으로부터 각도 25°에 있는 교통 신호등(216), 및 위치 [x3, y3]에 그리고 차량(100)으로부터 각도 10°에 있는 건물(270)을 검출할 수 있다. 다른 예를 들면, 여전히 시험 루트 상에 있는 동안, 차량(100)이 위치 [x_b, y_b]에 있을 때, 차량(100)의 LIDAR 센서(들)(180)는 위치 [x4, y4]에 그리고 차량(100)으로부터 각도 25°에 있는 정지 표지판(260), 및 위치 [x5, y5]에 그리고 차량(100)으로부터 각도 25°에 있는 주차장(280)을 검출할 수 있다. 시험 루트 동안의 차량(100)의 위치들은 내비게이션 시스템(168)에 의해 결정될 수 있다. 도시되지는 않았지만, LIDAR 데이터는 이러한 특징들 또는 객체들의 크기 및 형상과 같은 상세들을 추가로 포함할 수 있다.
저장된 센서 데이터는 각각의 교통 특징 또는 객체의 이전에 검출된 위치 및 배향과 같은 정보를 포함할 수 있다. 이와 관련하여, 교통 특징 또는 객체에 대한 저장된 센서 데이터는 과거의 차량(100)의 센서들에 의한 교통 특징 또는 객체의 이전 검출들을 포함할 수 있다. 교통 특징 또는 객체에 대한 저장된 센서 데이터는 추가적으로 또는 대안적으로 다른 차량들의 센서들에 의해 이루어진 교통 특징 또는 객체의 이전 검출들을 포함할 수 있다. 또한, 저장된 센서 데이터는 교통 특징 또는 객체가 검출되었을 때 센서 데이터를 취하는 차량의 위치를 포함할 수 있다. 저장된 센서 데이터는 컴퓨팅 디바이스(110) 상에 저장될 수 있다. 추가적으로 또는 대안적으로, 저장된 센서 데이터는 컴퓨터 디바이스(110)에 의해 액세스가능한 서버 컴퓨팅 디바이스(410) 및/또는 저장 시스템(450) 상에 저장될 수 있다.
도시되지는 않았지만, 저장된 센서 데이터 및 수집된 센서 데이터는 다수의 센서에 의해, 예컨대 차량(100) 내의 또는 차량(100) 상의 상이한 위치들에 장착된 상이한 LIDAR 센서들에 의해 취해진 동일한 타입의 센서 데이터를 포함할 수 있다. 또한, 저장된 센서 데이터 및 수집된 센서 데이터는 카메라 데이터와 같은 상이한 타입들의 센서 데이터를 포함할 수 있다. 각각의 타입의 센서 데이터는 각각의 교통 특징 또는 객체의 검출된 위치 및 배향, 및 그 특징 또는 객체에 대한 센서 데이터가 취해질 때의 차량(100)의 위치와 같은, LIDAR 데이터와 유사한 정보를 포함할 수 있다. 또한, 각각의 타입의 센서 데이터는 이러한 특징들 또는 객체들의 크기, 형상, 컬러와 같은 추가 상세들을 포함할 수 있다.
도시되지는 않았지만, 수집된 센서 데이터는 차량(100A), 차량(100B), 교통 콘(670) 및 보행자(680)와 같은 일시적 또는 이동 교통 특징들 및/또는 객체들에 대한 데이터를 추가로 포함할 수 있다. 예를 들어, 시험 루트의 위치 [x_c, y_c]에 있는 동안, 차량(100)의 LIDAR 센서(들)(180)는 차량(100)의 전방으로부터 15° 각도로 위치 [x6, y6]에 있는 차량(100A)을 검출할 수 있다. 동시에 또는 거의 동시에, 카메라 센서(들)(182) 및 RADAR 센서(184)는 또한 각각 15° 각도로 위치 [x6, y6]에 있는 차량(100A)을 검출할 수 있다. 예를 들어, 카메라 데이터는 차량(100A)의 컬러를 추가로 포함할 수 있고, RADAR 데이터는 차량(100A)의 속도를 추가로 포함할 수 있다.
도 6 및 도 8을 참조하면, 컴포넌트 데이터는 차량(100)의 다양한 컴포넌트들에 대해 수집될 수 있다. 예를 들어, 도 8에 도시된 바와 같이, 타이어 압력들은 차량(100)의 모든 4개의 타이어에 대해 수집될 수 있다. 다른 예를 들면, 휠 정렬 데이터는 차량(100)의 모든 4개의 휠에 대해 수집될 수 있다. 휠 정렬 데이터는 각각의 휠에 대한 캠버(camber) 각도, 캐스터(caster) 각도 및 토(toe) 각도를 포함할 수 있다. 또 다른 예를 들면, 차량(100)의 브레이크에 대한 데이터가 수집될 수 있다. 예를 들어, 100km/hr과 같은 특정 속도에서의 정지 거리가 측정될 수 있다. 또 다른 예를 들면, 야간 라이트뿐만 아니라 회전 및 후진 신호들 등의 다양한 라이트들의 응답성이 턴온 및 턴오프될 수 있다.
차량이 시험 루트를 완료하는 동안 또는 완료한 후에, 수집된 데이터를 분석함으로써 복수의 성능 검사가 수행될 수 있다. 컴퓨팅 디바이스들(110)은 차량(100)이 시험 루트를 통해 내비게이팅하는 동안 수집된 데이터를 실시간으로 분석함으로써 복수의 성능 검사를 수행하거나, 컴퓨팅 디바이스(110)가 시험 루트를 완료한 후에 검사들을 수행할 수 있도록 메모리(130)에 수집된 데이터를 저장할 수 있다. 추가적으로 또는 대안적으로, 수집된 데이터는 서버 컴퓨팅 디바이스(410)가 복수의 성능 검사를 수행할 수 있도록 서버 컴퓨팅 디바이스(410) 또는 저장 시스템(450)에 업로드될 수 있다. 컴퓨팅 디바이스(110)가 검사들을 수행하게 하는 것은 더 큰 효율을 제공할 수 있는데, 그 이유는 수집된 데이터를 서버 컴퓨팅 디바이스(410) 또는 저장 시스템(450)에 업로드하는 것이 시간 소모적일 수 있기 때문이다.
센서 검사를 위해, 시험 루트 동안 수집된 교통 특징 또는 객체의 검출된 특성들은 교통 특징 또는 객체의 이전에 검출되거나 저장된 특성들과 비교될 수 있다. 센서는 시험 루트 동안 수집된 특성들이 동일한 센서에 의해 이전에 검출되거나 저장된 특성들과 매칭될 때 센서 검사를 만족시킬 수 있고, 시험 루트 동안 수집된 특성들이 이전에 검출되거나 저장된 특성들과 매칭되지 않을 때 센서 검사를 만족시키지 않을 수 있다. 예를 들어, 도 7을 참조하면, LIDAR 센서(들)(180)로부터 수집된 LIDAR 데이터는 LIDAR 센서(들)(180)에 의한 이전 검출로부터의 저장된 LIDAR 값들과 비교될 수 있다. 예를 들어, 컴퓨팅 디바이스(110)는 교통 신호등(216), 건물(270), 정지 표지판(260) 및 주차장(280) 각각에 대한 검출된 위치가 저장된 LIDAR 값들과 동일하지만, 각각의 검출된 배향이 5° 각도만큼 오프셋되어 있다고 결정할 수 있다. 이와 같이, 컴퓨팅 디바이스(110)는 LIDAR 센서(들)(180)가 센서 검사를 만족시키지 않는다고 결정할 수 있다.
도 9는 예시적인 센서 검사를 나타내는 예시적인 상황(900)을 도시한다. 도 9의 다양한 특징들은 일반적으로 도 2의 지도 데이터(200)에 도시되고 그와 같이 라벨링된 특징들의 형상, 위치 및 다른 특성들에 대응할 수 있다. 다양한 도로 사용자들 및 다른 객체들을 포함하는 도 9의 추가 특징들이 아래에 상세히 설명된다. 이러한 예들은 예증 목적들을 위해 유용하지만, 이들이 제한적인 것으로 간주되어서는 안 된다.
도 9에 도시된 바와 같이, 차량(100)이 위치 [x_b, y_b]에 있는 동안, LIDAR 센서(들)(180)는 위치 [x4, y4]에 그리고 차량(100)의 전방 우측 코너에 대해 25° 각도의 배향에 있는 정지 표지판(260)을 검출한다. 그러나, 정지 표지판(260)에 대한 저장된 LIDAR 값들은 위치 [x4, y4] 및 차량(100)의 전방 우측 코너에 대한 30° 각도의 배향을 포함한다. 이것은 저장된 LIDAR 값들이 취해졌을 때 LIDAR 센서(들)(180)의 그의 이전 포지션으로부터의 이동으로 인한 것일 수 있다. 예를 들어, 차량(100)이 레인(212)에서 연석 쪽에 주차되었을 동안 보행자는 차량(100)을 지나갈 때 LIDAR 센서(들)(180)를 우연히 터치했을 수 있다. 이와 같이, 이 회전은 LIDAR 센서(들)(180)에 의해 이루어진 모든 검출들에 대해 -5° 각도 오프셋을 야기한다.
추가적으로 또는 대안적으로, 컴퓨팅 디바이스(110)는 수집된 센서 데이터에서 검출된 교통 특징들 및/또는 객체들의 위치 및/또는 배향을 지도 데이터(200)에 저장된 교통 특징들 및/또는 객체들의 위치 및/또는 배향과 비교할 수 있다. 예를 들어, 도 7에 도시된 바와 같이, 컴퓨팅 디바이스(110)는 수집된 LIDAR 데이터에서 검출된 교통 신호등(216)에 대한 위치 [x1, y1]을 지도 데이터(200)에 저장된 위치 [x1, y1]과 비교하고, 수집된 LIDAR 데이터에서 검출된 건물(270)에 대한 위치 [x3, y3]을 지도 데이터(200)에 저장된 위치 [x3, y3]과 비교하고, 수집된 LIDAR 데이터에서 검출된 정지 표지판(260)에 대한 위치 [x4, y4]를 지도 데이터(200)에 저장된 위치 [x4, y4]와 비교하고, 수집된 LIDAR 데이터에서 검출된 주차장(280)에 대한 위치 [x5, y5]를 지도 데이터(200)에 저장된 위치 [x5, y5]와 비교하고, LIDAR 센서(들)(180)가 센서 검사를 통과한다고 결론을 내릴 수 있다. 이와 관련하여, 컴퓨팅 디바이스(110)는 시험 루트 동안 검출된 일부 또는 모든 교통 특징들 및/또는 객체들에 대해 수집된 센서 데이터를 지도 데이터(200)와 비교할 수 있다.
일부 경우들에서, 컴퓨팅 디바이스(110)는 저장된 센서 데이터와 수집된 센서 데이터 사이의 차이들이 미리 결정된 범위 내에 있는 경우 센서가 여전히 센서 시험을 통과할 수 있다고 결정할 수 있다. 예를 들어, 컴퓨팅 디바이스(110)는 검출된 객체에 대한 저장된 배향과 검출된 배향에서의 차이가 10° 범위 내에 있는 경우 LIDAR 센서(들)(180)가 센서 시험을 여전히 통과할 수 있다고 결정할 수 있다.
컴퓨팅 디바이스(110)는 센서 시험에 실패한 하나 이상의 센서에 대한 하나 이상의 보정을 결정할 수 있다. 예를 들어, LIDAR 센서(들)(180)에 대해, 컴퓨팅 디바이스(110)는 LIDAR 센서(들)(180)에 의해 검출된 모든 배향 값들에 대해 +5° 보정을 결정할 수 있다. 예를 들어, 컴퓨팅 디바이스(110)는 정지 표지판(260)에 대한 검출된 25° 각도에 5°를 더할 수 있다.
다른 센서 검사는 검출된 객체에 대해 동일한 타입의 다양한 센서들로부터 수집된 센서 데이터를 비교하는 것을 포함할 수 있다. 예를 들어, LIDAR 센서(들)(180)가 중첩 시야들을 갖는 다수의 센서를 포함하는 경우, 컴퓨팅 디바이스(110)는 제1 센서에 의해 수집되는 교통 신호등(216)에 대한 LIDAR 포인트 클라우드(point cloud)를 제2 센서에 의해 수집되는 교통 신호등(216)에 대한 LIDAR 포인트 클라우드와 비교할 수 있다. 제2 센서의 이러한 센서 에러는 다른 도로 사용자에 의한 손상과 같은 다수의 인자 중 임의의 것에 의해, 또는 극한 온도 또는 습도와 같은 환경 인자들로 인해 야기될 수 있다. 컴퓨팅 디바이스(110)는, 2개의 LIDAR 포인트 클라우드가, 90% 또는 일부 다른 임계값과 같이, 실질적으로 매칭되는 경우, 제1 센서 및 제2 센서 둘 다가 센서 검사를 통과한다고 결정할 수 있다.
또 다른 센서 검사는 센서에 의해 캡처된 해상도 또는 시야를 결정하는 것을 포함할 수 있다. 예를 들어, LIDAR 센서(들)(180)에 대한 수집된 LIDAR 데이터가 저장된 LIDAR 데이터보다 더 작은 시야를 갖는 경우, 컴퓨팅 디바이스(110)는 LIDAR 센서(들)(180)가 센서 검사에 실패한 것으로 추가로 결정할 수 있다. 일부 예들에서, 컴퓨팅 디바이스(110)는 시험 루트 동안 수집된 LIDAR 데이터의 시야와 저장된 LIDAR 데이터의 시야 사이의 차이가 미리 결정된 임계 차이 내에 있는 경우 LIDAR 센서(들)(180)가 센서 시험을 여전히 통과할 수 있다고 결정할 수 있다. 다른 예를 들면, 카메라 센서(들)(182)에 대해 수집된 카메라 데이터가 저장된 카메라 데이터보다 낮은 해상도를 갖는 경우, 컴퓨팅 디바이스(110)는 카메라 센서(들)(182)가 센서 검사에 실패한 것으로 추가로 결정할 수 있다. 일부 예들에서, 컴퓨팅 디바이스(110)는 시험 루트 동안 수집된 카메라 데이터의 해상도와 저장된 카메라 데이터의 해상도 사이의 차이가 미리 결정된 임계 차이 내에 있는 경우 카메라 센서(들)(182)가 여전히 센서 시험을 통과할 수 있다고 결정할 수 있다. 해상도 또는 시야에서의 이러한 변화들은, 다른 도로 사용자에 의한 손상과 같은, 다수의 인자 중 임의의 것에 의해, 또는 극한 온도 또는 습도와 같은 환경 인자들로 인해 야기될 수 있다.
또 다른 센서 검사는 센서가 합리적이지 않은 센서 데이터를 생성하는지를 결정하는 것을 포함할 수 있다. 예를 들어, 컴퓨팅 디바이스(110)는 카메라 센서(들)(182)에 의해 생성된 카메라 데이터가 모두 녹색이라고 결정하고, 카메라 센서(들)(182)가 센서 검사에 실패한 것으로 결론을 내릴 수 있다. 다른 예를 들면, 컴퓨팅 디바이스(110)는 LIDAR 센서(들)(180)가 비어 있는 포인트 클라우드들을 생성한다고 결정하고, LIDAR 센서(들)(180)가 센서 검사에 실패한 것으로 결론을 내릴 수 있다. 해상도 또는 시야에서의 이러한 변화들은, 다른 도로 사용자에 의한 손상과 같은, 다수의 인자 중 임의의 것에 의해, 또는 극한 온도 또는 습도와 같은 환경 인자들로 인해 야기될 수 있다.
다른 예를 들면, 지도 검사에 대해, 검출된 교통 특징의 위치 또는 배향은 차량의 지도 데이터에 저장된 이전에 검출되거나 저장된 교통 특징의 위치 및/또는 배향과 비교될 수 있다. 지도 데이터는 시험 루트 동안 검출된 교통 특징들의 위치 및/또는 배향이 지도 데이터에 저장된 교통 특징의 위치 및/또는 배향과 매칭될 때 지도 검사를 만족시킬 수 있다. 예를 들어, 도 7을 참조하면, LIDAR 센서(들)(180)에 의해 검출된 교통 특징들의 위치들이 지도 데이터(200)에 저장된 위치들과 비교될 수 있다. 예를 들어, 컴퓨팅 디바이스(110)는 교통 신호등(216), 건물(270), 정지 표지판(260) 및 주차장(280) 각각에 대한 LIDAR 센서(들)(180)에 의한 검출된 위치가 지도 데이터(200)에 저장된 위치들과 동일하지만, 보행자 교차로(218)가 LIDAR 센서(들)(180)에 의해 검출되지 않는다고 결정할 수 있다.
지도 데이터(200)와 교통 특징에 대한 수집된 센서 데이터 사이의 차이가 검출될 때, 컴퓨팅 디바이스(110)는 이 차이가 지도 데이터(200)에서의 에러 또는 수집된 센서 데이터에서의 에러로 인한 것인지를 추가로 결정할 수 있다. 예를 들어, 컴퓨팅 디바이스(110)는, 보행자 교차로가 3D 구조가 아니고 LIDAR 센서(들)(180)의 시야가 지면 레벨을 포함하지 않기 때문에, LIDAR 센서(들)(180)가 보행자 교차로(218)를 검출할 수 없고, 따라서 차이가 지도 데이터(200)에서의 에러를 표시하지 않는다고 결정할 수 있다. 이러한 경우들에서, 컴퓨팅 디바이스(110)는 지도 데이터(200)에 저장된 위치를 카메라 센서(들)(182)와 같은 다른 센서로부터의 수집된 센서 데이터와 비교함으로써 추가로 확인할 수 있다. 예를 들어, 컴퓨팅 디바이스(110)는 지도 데이터(200) 내의 보행자 교차로(218)에 대한 위치가 카메라 센서(들)(182)에 의해 검출된 위치와 매칭되는 것으로 결정할 수 있다.
일부 경우들에서, 컴퓨팅 디바이스(110)는 지도 데이터(200)에 대해 업데이트가 행해질 필요가 있다고 결정할 수 있다. 도 9를 참조하면, 도 9는 예시적인 지도 검사를 추가로 예시하는 예시적인 상황(900)을 도시한다. 도시된 바와 같이, 위치 [x_b, y_b]에 있는 동안, 차량(100)의 LIDAR 센서(들)(180)는 주차장(280)의 출구(284) 근처의 진입금지 표지판(910)을 검출한다. 그러나, 지도 데이터(200)는 이 위치에서 진입금지 표지판에 대한 데이터를 포함하지 않는다. 이와 같이, 컴퓨팅 디바이스(110)는 진입금지 표지판(910)의 검출된 위치로 지도 데이터(200)를 업데이트하기로 결정할 수 있다.
추가적으로 또는 대안적으로, 컴퓨팅 디바이스(110)는, 일부 에러가 존재하더라도, 지도 데이터에 저장된 교통 특징들의 임계 수 또는 퍼센티지가 수집된 센서 데이터로부터 검출된 위치들과 매칭되는 위치들을 갖는 경우 지도 데이터가 여전히 지도 시험을 통과할 수 있다고 결정할 수 있다. 예를 들어, 컴퓨팅 디바이스(110)는 저장된 특징들 중 적어도 5개 또는 적어도 80%가 수집된 센서 데이터와 매칭되는 위치들을 갖는 경우 지도 데이터(200)가 여전히 지도 시험을 통과할 수 있다고 결정할 수 있다. 예를 들어, 교통 신호등(216), 보행자 교차로(218), 건물(270), 정지 표지판(260), 및 주차장(280)에 대한 위치들이 수집된 LIDAR 데이터의 위치와 매칭되기 때문에, 진입금지 표지판(910)에 대한 위치가 누락되었더라도, 컴퓨팅 디바이스(110)는 지도 데이터(200)가 지도 시험을 통과할 수 있다고 여전히 결정할 수 있다.
다른 예를 들면, 컴포넌트 검사에 대해, 차량의 컴포넌트에 관련된 하나 이상의 측정치가 미리 결정된 요건들과 비교될 수 있다. 컴포넌트는 하나 이상의 측정치가 미리 결정된 요건들을 만족시킬 때 컴포넌트 검사를 만족시킬 수 있다. 예를 들어, 미리 결정된 요건들은 컴퓨팅 디바이스(110)에 저장될 수 있거나, 또는 대안적으로 또는 추가적으로 서버 컴퓨팅 디바이스(410) 및/또는 저장 시스템(450)에 저장될 수 있다.
일부 경우들에서, 컴포넌트는 측정치가 미리 결정된 임계 값을 충족시키는 경우 컴포넌트 검사를 충족시킬 수 있다. 예를 들어, 도 8을 참조하면, 차량(100)의 타이어들에 대해 35psi의 미리 결정된 최소 임계 값이 저장될 수 있다. 도시된 바와 같이, 전방 좌측 타이어, 후방 좌측 타이어, 및 후방 우측 타이어가 각각 미리 결정된 최소 임계 값을 충족시키기 때문에, 이러한 타이어들은 컴포넌트 검사를 만족시킨다. 그러나, 전방 우측 타이어는 단지 20psi의 압력을 갖기 때문에, 전방 우측 타이어는 컴포넌트 검사에 실패한다.
추가적으로 또는 대안적으로, 컴포넌트는 측정치가 미리 결정된 값들의 범위 내에 있는 경우 컴포넌트 검사를 만족시킬 수 있다. 예를 들어, 도 8을 참조하면, 캠버, 캐스터 및 토 각도들을 포함하는 미리 결정된 정렬 각도들이 차량(100)의 타이어들에 대해 설정될 수 있다. 차량(100)의 타이어들 각각이 이러한 미리 결정된 범위들 내의 정렬 각도들을 가지므로, 차량(100)의 타이어들 각각은 컴포넌트 검사를 통과한다.
추가적으로 또는 대안적으로, 측정치가 컴포넌트가 미리 결정된 응답성 레벨을 갖는다는 것을 표시하는 경우 컴포넌트가 컴포넌트 검사를 만족시킬 수 있다. 예를 들어, 도 8을 참조하면, 미리 결정된 응답성 레벨은 헤드라이트뿐만 아니라 좌회전, 우회전, 후진, 및 브레이크 신호 라이트들 각각에 대해 이진(binary)(응답하거나 그렇지 않음)으로서 설정될 수 있다. 도시된 바와 같이, 좌회전, 우회전, 후진, 및 브레이크 신호 라이트들이 모두 응답하기 때문에, 컴퓨팅 디바이스(110)는 이들이 각각 컴포넌트 검사에 통과한 것으로 결정할 수 있다. 그러나, 헤드라이트가 응답하지 않기 때문에, 컴퓨팅 디바이스(110)는 헤드라이트가 컴포넌트 검사에 실패한 것으로 결정할 수 있다.
다른 예를 들어, 다시 도 8을 참조하면, 미리 결정된 레벨 또는 응답성은 미리 결정된 지연 레벨로서 설정될 수 있다. 도시된 바와 같이, 브레이크에 대해, 100km/hr과 같은 특정 속도에서의 미리 결정된 정지 거리가 차량(100)에 대해 설정될 수 있다. 이와 같이, 차량(100)에 대한 측정된 정지 거리가 20m의 미리 결정된 정지 거리 미만인 19m이기 때문에, 컴퓨팅 디바이스(110)는 브레이크가 컴포넌트 검사를 통과한 것으로 결정할 수 있다.
복수의 성능 검사가 완료되면, 컴퓨팅 디바이스들(110)은 차량(100)에 대한 동작 모드를 선택할 수 있다. 동작을 위한 모드들은, 예를 들어, 작업 지정들(승객 또는 비-승객 작업들)을 포함할 수 있다. 동작의 모드들은 속도들, 거리, 지리적 영역, 또는 환경 조건들(날씨, 주간/야간 등)에 대한 제한들과 같은 다양한 제한들을 추가로 포함할 수 있다. 동작을 위한 모드들은 또한 복수의 성능 검사를 완료한 후에 차량이 정차되거나 주차되는 비활성 모드를 포함할 수 있다.
컴퓨팅 디바이스(110)는 복수의 성능 검사로부터의 결과들에 기초하여 동작 모드를 결정할 수 있다. 예를 들어, 동작 모드는 임계 수의 퍼센티지의 성능 검사들이 통과되는 경우에만 선택될 수 있다. 또 다른 예를 들면, 동작 모드는, 전술된 센서 검사들과 같은 성능 검사, 및 신호 라이트들과 헤드라이트 등을 수반하는 컴포넌트 검사들을 포함할 수 있는, 야간에 또는 불량한 가시성 동안 주행하는 것에 특정한 성능 검사 세트 등의, 특정한 성능 검사 세트가 통과되는 경우에만 선택될 수 있다.
컴퓨팅 디바이스(110)는 특정 실패들에 기초하여 하나 이상의 동작 모드가 선택될 수 없다고 결정할 수 있다. 예를 들어, 컴퓨팅 디바이스(110)는, 차량(100)에 대한 100km/hr에서의 정지 거리가 20m 초과인 경우, 100km/hr 이상의 속도에서 주행하는 것을 수반하는 동작의 모드들이 선택될 수 없다고 결정할 수 있다. 다른 예를 들면, 컴퓨팅 디바이스(110)는, 지각 시스템(172) 내의 센서들의 80% 미만이 센서 시험에 실패하는 경우, 야간 또는 특정 날씨 조건들에서 주행하는 것을 수반하는 동작 모드가 선택될 수 없다고 결정할 수 있다. 또 다른 예를 들면, 컴퓨팅 디바이스(110)는, 하나 이상의 타이어가 35psi 미만의 타이어 압력을 갖는 경우, 승객 작업들을 수반하는 동작의 모드들이 선택될 수 없다고 결정할 수 있다.
컴퓨팅 디바이스(110)는 교통 법 요건들 및 차량의 타입과 같은 다른 인자들에 추가로 기초하여 동작 모드를 선택할 수 있다. 예를 들어, 교통 법은 동작적 방향 지시등들을 갖도록 차량에 요구할 수 있다. 이와 같이, 컴퓨팅 디바이스(110)는 방향 지시등들 중 임의의 방향 지시등이 응답하지 않는 경우 비활성 모드를 선택할 수 있다. 다른 예를 들면, 컴퓨팅 디바이스(110)는 정상 타이어 압력들 미만인 소형 차량들에 대해서만 거리에 대한 제한을 갖는 동작 모드를 선택하고, 정상 타이어 압력들 미만인 트럭들에 대한 비활성 동작 모드를 선택할 수 있다.
동작 모드가 선택되면, 컴퓨팅 디바이스(110)는 선택된 동작 모드로 차량(100)을 동작시킬 수 있다. 예를 들어, 선택된 동작 모드로 동작시키는 것은, 속도, 거리, 지리적 영역, 환경 조건에 대한 제한들 등의, 동작의 모드의 제한들에 따라 동작시키는 것을 포함할 수 있다. 다른 예를 들면, 선택된 모드로 동작시키는 것은 승객 또는 비-승객 작업들을 수락할지를 결정할지를 포함할 수 있다.
선택된 동작 모드로 동작시키는 것은 하나 이상의 센서에 대해 결정된 보정들을 사용하는 것을 추가로 포함할 수 있다. 예를 들어, 도 7 및 도 9와 관련하여 설명된 바와 같이, 차량(100)을 동작시킬 때, 컴퓨팅 디바이스(110)는 LIDAR 센서(들)(180)에 의해 검출된 센서 데이터에 +5°의 보정을 적용할 수 있다.
선택된 동작 모드로 동작시키는 것은 업데이트된 지도 데이터를 사용하는 것을 추가로 포함할 수 있다. 예를 들어, 도 7 및 도 9와 관련하여 설명된 바와 같이, 차량(100)을 동작시킬 때, 컴퓨팅 디바이스(110)는 진입금지 표지판(910)을 포함하는 업데이트된 지도 데이터(200)를 사용할 수 있다.
동작 모드들은 또한 플릿 관리 시스템과 같은 원격 시스템에 의해 복수의 차량에 대해 선택될 수 있다. 예를 들어, 서버 컴퓨팅 디바이스(410)는 차량(100, 100A, 100B)을 포함하는 플릿을 관리할 수 있다. 이와 관련하여, 차량(100, 100A, 100B)과 같은 플릿 내의 다양한 차량들에 의해 수집된 센서 데이터 및 컴포넌트 데이터는 서버 컴퓨팅 디바이스(410)에 업로드될 수 있다. 서버 컴퓨팅 디바이스(410)는 각각의 차량으로부터 수집된 센서 데이터를 이전 검출들로부터의 저장된 센서 값들과 비교할 수 있다. 서버 컴퓨팅 디바이스(410)는 또한 수집된 컴포넌트 데이터를 저장된 미리 결정된 요건들과 비교할 수 있다. 일부 경우들에서, 복수의 성능 검사는 각각의 차량의 컴퓨팅 디바이스에 의해 수행될 수 있고, 결과들(통과/실패)만이 서버 컴퓨팅 디바이스(410)에 업로드된다. 서버 컴퓨팅 디바이스(410)는 그 후, 전술된 바와 같은 복수의 성능 검사에 기초하여 예컨대 임계 수 또는 퍼센트의 성능 검사들, 특정 성능 검사 세트에 통과하는 것, 차량의 타입 또는 교통 법과 같은 다른 인자들 등에 기초하여, 복수의 차량의 차량들의 서브세트들에 대한 동작의 모드들을 지정할 수 있다. 다른 예를 들면, 서버 컴퓨팅 디바이스(410)는 플릿 내의 차량들에 대한 계획된 분포 또는 요구에 추가로 기초하여 동작들의 모드들을 지정할 수 있다.
도 10은 복수의 성능 검사를 수행하기 위한 예시적인 방법의 예시적인 흐름도(1000)를 도시한다. 예시적인 방법은 컴퓨팅 디바이스(110)의 하나 이상의 프로세서(120)와 같은 하나 이상의 프로세서에 의해 수행될 수 있다. 예를 들어, 컴퓨팅 디바이스(110)의 프로세서들(120)은 흐름도(1000)에 도시된 바와 같이 데이터를 수신하고 다양한 결정들을 행할 수 있고, 이러한 결정들에 기초하여 차량(100)을 제어할 수 있다.
도 10을 참조하면, 블록(1010)에서, 차량의 복수의 검출 시스템의 검출 시스템에 대한 제1 검사 및 지도 데이터에 대한 제2 검사를 포함하는 복수의 성능 검사가 식별된다. 블록(1020)에서, 차량의 위치 및 복수의 성능 검사에 기초하여 복수의 도로 세그먼트가 선택되고, 여기서 복수의 도로 세그먼트 각각은 복수의 성능 검사 중 하나 이상을 수행하기 위해 선택된다. 블록(1030)에서, 복수의 도로 세그먼트를 연결하고 차량의 위치를 복수의 도로 세그먼트 중 하나에 연결함으로써 차량에 대한 시험 루트가 결정된다. 예를 들어, 복수의 도로 세그먼트 및 시험 루트는 도 6과 관련하여 설명된 바와 같이 결정될 수 있다. 블록(1040)에서, 차량은 자율 주행 모드에서 시험 루트를 따라 제어된다. 블록(1050)에서, 차량을 제어하는 동안, 차량의 복수의 검출 시스템으로부터 센서 데이터가 수신된다. 예를 들어, 시험 루트 상에서 수집된 센서 데이터는 도 7과 관련하여 설명된 바와 같이 컴퓨팅 디바이스(110)에 의해 수신될 수 있다.
블록(1060)에서, 복수의 성능 검사는 수신된 센서 데이터에 기초하여 수행된다. 예를 들어, 하나 이상의 센서 검사는 수집된 센서 데이터를 저장된 이전 센서 데이터와 비교함으로써 수행될 수 있다. 다른 예를 들면, 하나 이상의 지도 검사는 수집된 센서 데이터를 지도 데이터와 비교함으로써 수행될 수 있다. 블록(1070)에서, 동작 모드는 복수의 성능 검사의 결과들에 기초하여 차량에 대해 복수의 동작 모드로부터 선택된다. 예를 들어, 주행 모드는 결과들이 임계 수 또는 퍼센티지의 성능 검사들을 충족시키는 것에 기초하여 선택될 수 있다. 블록(1080)에서, 차량은 선택된 동작 모드로 동작된다. 예를 들어, 선택된 동작 모드로 동작시키는 것은 센서 데이터에 대한 보정들 또는 지도 데이터에 대한 업데이트들을 사용하는 것을 포함할 수 있다.
달리 언급되지 않는 한, 전술한 대안적인 예들은 상호 배타적이지 않으며, 고유의 장점들을 달성하도록 다양한 조합으로 구현될 수 있다. 위에서 설명된 특징들의 이러한 및 다른 변형들 및 조합들은 청구항들에 의해 규정되는 주제로부터 벗어나지 않고서 사용될 수 있기 때문에, 전술한 실시예들의 설명은 청구항들에 의해 규정되는 주제의 제한으로서가 아니라 예시로서 받아들여져야 한다. 또한, 본 명세서에 설명된 예들뿐만 아니라, "와 같은", "포함하는" 등의 문구로 된 절들의 제공은 청구항들의 주제를 특정 예들로 제한하는 것으로 해석되어서는 안 된다; 오히려, 예들은 많은 가능한 실시예들 중 하나만을 예시하도록 의도된다. 또한, 다양한 도면들에서의 동일한 참조 번호들은 동일하거나 유사한 요소들을 식별할 수 있다.

Claims (20)

  1. 시스템으로서,
    하나 이상의 컴퓨팅 디바이스를 포함하고, 상기 하나 이상의 컴퓨팅 디바이스는:
    차량의 복수의 검출 시스템의 검출 시스템에 대한 제1 검사 및 지도 데이터에 대한 제2 검사를 포함하는 복수의 성능 검사를 식별하고;
    상기 차량의 위치 및 상기 복수의 성능 검사에 기초하여 복수의 도로 세그먼트를 선택하고- 상기 복수의 도로 세그먼트 각각은 상기 복수의 성능 검사 중 하나 이상을 수행하기 위해 선택됨 -;
    상기 복수의 도로 세그먼트를 연결하고 상기 차량의 상기 위치를 상기 복수의 도로 세그먼트 중 하나에 연결함으로써 상기 차량에 대한 시험 루트를 결정하고;
    자율 주행 모드에서 상기 시험 루트를 따라 상기 차량을 제어하고;
    상기 차량을 제어하는 동안, 상기 차량의 상기 복수의 검출 시스템으로부터 센서 데이터를 수신하고;
    상기 수신된 센서 데이터에 기초하여 상기 복수의 성능 검사를 수행하고;
    상기 복수의 성능 검사의 결과들에 기초하여 복수의 동작 모드로부터 상기 차량에 대한 동작 모드를 선택하고;
    상기 선택된 동작 모드로 상기 차량을 동작시키도록 구성되는, 시스템.
  2. 제1항에 있어서,
    상기 복수의 도로 세그먼트는 제1 도로 세그먼트를 포함하고, 상기 복수의 성능 검사 중 하나 이상은 상기 제1 도로 세그먼트를 따라 검출가능한 하나 이상의 교통 특징 또는 정지 객체를 사용하여 수행되는, 시스템.
  3. 제1항에 있어서,
    상기 복수의 도로 세그먼트는 상기 복수의 성능 검사 중 하나 이상에 대해 요구되는 기동이 수행될 수 있는 제2 도로 세그먼트를 포함하는, 시스템.
  4. 제1항에 있어서,
    상기 제1 검사는 검출된 교통 특징의 특성들을 상기 교통 특징의 이전에 검출된 특성들과 비교하는 것을 포함하는, 시스템.
  5. 제1항에 있어서,
    상기 제2 검사는 검출된 교통 특징의 위치를 상기 지도 데이터 내의 상기 검출된 교통 특징의 위치와 비교하는 것을 포함하는, 시스템.
  6. 제1항에 있어서,
    상기 복수의 성능 검사는 상기 차량의 컴포넌트에 대한 제3 검사를 추가로 포함하고, 상기 제3 검사는 상기 차량의 상기 컴포넌트에 관련된 하나 이상의 측정치를 임계 측정치와 비교하는 것을 포함하는, 시스템.
  7. 제1항에 있어서,
    상기 동작 모드는 상기 결과들이 상기 복수의 성능 검사의 임계 수를 만족시키는 것에 기초하여 선택되는, 시스템.
  8. 제1항에 있어서,
    상기 동작 모드는 상기 결과들이 상기 복수의 성능 검사 중 하나 이상의 성능 검사 세트를 만족시키는 것에 기초하여 선택되는, 시스템.
  9. 제1항에 있어서,
    상기 하나 이상의 컴퓨팅 디바이스는:
    상기 복수의 성능 검사의 상기 결과들에 기초하여 상기 검출 시스템들 중 적어도 하나에 대한 하나 이상의 보정을 결정하도록 추가로 구성되는, 시스템.
  10. 제1항에 있어서,
    상기 하나 이상의 컴퓨팅 디바이스는:
    상기 복수의 성능 검사의 상기 결과들에 기초하여 상기 지도 데이터를 업데이트하도록 추가로 구성되는, 시스템.
  11. 제9항에 있어서,
    상기 선택된 동작 모드로 동작시키는 것은 상기 하나 이상의 보정을 사용하는 것을 포함하는, 시스템.
  12. 제10항에 있어서,
    상기 선택된 동작 모드로 동작시키는 것은 상기 업데이트된 지도 데이터를 사용하는 것을 포함하는, 시스템.
  13. 제1항에 있어서,
    상기 선택된 동작 모드는 비활성 모드인, 시스템.
  14. 제1항에 있어서,
    상기 차량을 추가로 포함하는 시스템.
  15. 차량에 대한 검사들을 수행하기 위한 방법으로서,
    하나 이상의 컴퓨팅 디바이스에 의해, 상기 차량의 복수의 검출 시스템의 검출 시스템에 대한 제1 검사 및 지도 데이터에 대한 제2 검사를 포함하는 복수의 성능 검사를 식별하는 단계;
    상기 하나 이상의 컴퓨팅 디바이스에 의해, 상기 차량의 위치 및 상기 복수의 성능 검사에 기초하여 복수의 도로 세그먼트를 선택하는 단계- 상기 복수의 도로 세그먼트 각각은 상기 복수의 성능 검사 중 하나 이상을 수행하기 위해 선택됨 -;
    상기 하나 이상의 컴퓨팅 디바이스에 의해, 상기 복수의 도로 세그먼트를 연결하고 상기 차량의 상기 위치를 상기 복수의 도로 세그먼트 중 하나에 연결함으로써 상기 차량에 대한 시험 루트를 결정하는 단계;
    상기 하나 이상의 컴퓨팅 디바이스에 의해, 자율 주행 모드에서 상기 시험 루트를 따라 상기 차량을 제어하는 단계;
    상기 차량을 제어하는 동안, 상기 하나 이상의 컴퓨팅 디바이스에 의해, 상기 차량의 상기 복수의 검출 시스템으로부터 센서 데이터를 수신하는 단계;
    상기 하나 이상의 컴퓨팅 디바이스에 의해, 상기 수신된 센서 데이터에 기초하여 상기 복수의 성능 검사를 수행하는 단계;
    상기 하나 이상의 컴퓨팅 디바이스에 의해, 상기 복수의 성능 검사의 결과들에 기초하여 복수의 동작 모드로부터 상기 차량에 대한 동작 모드를 선택하는 단계; 및
    상기 하나 이상의 컴퓨팅 디바이스에 의해, 상기 선택된 동작 모드로 상기 차량을 동작시키는 단계를 포함하는 방법.
  16. 제15항에 있어서,
    상기 복수의 도로 세그먼트는 제1 도로 세그먼트를 포함하고, 상기 복수의 성능 검사 중 하나 이상은 상기 제1 도로 세그먼트를 따라 검출가능한 하나 이상의 교통 특징 또는 정지 객체를 사용하여 수행되는, 방법.
  17. 제15항에 있어서,
    상기 복수의 도로 세그먼트는 상기 복수의 성능 검사 중 하나 이상에 대해 요구되는 기동이 수행될 수 있는 제2 도로 세그먼트를 포함하는, 방법.
  18. 제15항에 있어서,
    상기 하나 이상의 컴퓨팅 디바이스에 의해, 상기 복수의 성능 검사의 상기 결과들에 기초하여 상기 검출 시스템들 중 적어도 하나에 대한 하나 이상의 보정을 결정하는 단계- 상기 선택된 동작 모드로 동작시키는 것은 상기 하나 이상의 보정을 사용하는 것을 포함함 -를 추가로 포함하는 방법.
  19. 제15항에 있어서,
    상기 하나 이상의 컴퓨팅 디바이스에 의해, 상기 복수의 성능 검사의 상기 결과들에 기초하여 상기 지도 데이터를 업데이트하는 단계- 상기 선택된 동작 모드로 동작시키는 것은 상기 업데이트된 지도 데이터를 사용하는 것을 포함함 -를 추가로 포함하는 방법.
  20. 제15항에 있어서,
    상기 복수의 성능 검사는 규칙적인 간격으로 수행되는, 방법.
KR1020217021514A 2018-12-13 2019-12-03 자율 주행 차량들에 대한 자동화된 성능 검사들 KR102503572B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/219,386 US10960894B2 (en) 2018-12-13 2018-12-13 Automated performance checks for autonomous vehicles
US16/219,386 2018-12-13
PCT/US2019/064152 WO2020123195A1 (en) 2018-12-13 2019-12-03 Automated performance checks for autonomous vehicles

Publications (2)

Publication Number Publication Date
KR20210090285A true KR20210090285A (ko) 2021-07-19
KR102503572B1 KR102503572B1 (ko) 2023-02-24

Family

ID=71073310

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217021514A KR102503572B1 (ko) 2018-12-13 2019-12-03 자율 주행 차량들에 대한 자동화된 성능 검사들

Country Status (6)

Country Link
US (2) US10960894B2 (ko)
EP (1) EP3877229A4 (ko)
JP (1) JP7271669B2 (ko)
KR (1) KR102503572B1 (ko)
CN (1) CN113272198A (ko)
WO (1) WO2020123195A1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102536446B1 (ko) 2021-11-29 2023-05-26 주식회사 와이즈오토모티브 실도로 환경에서 복수의 평가 장치를 이용한 자율주행 차량의 장애물 인지 성능 평가 장치 및 방법
KR20230079855A (ko) 2021-11-29 2023-06-07 주식회사 와이즈오토모티브 자율 주행 차량의 장애물 인지 성능 평가 장치 및 방법
KR20230095177A (ko) * 2021-12-21 2023-06-29 한국전자기술연구원 실제 도로 상황을 반영한 시뮬레이터용 도로교통 시나리오 생성 방법 및 시스템

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11520331B2 (en) * 2018-12-28 2022-12-06 Intel Corporation Methods and apparatus to update autonomous vehicle perspectives
US11620907B2 (en) * 2019-04-29 2023-04-04 Qualcomm Incorporated Method and apparatus for vehicle maneuver planning and messaging
CN110375991B (zh) * 2019-06-19 2021-10-08 山东省科学院自动化研究所 一种针对自动驾驶车辆换道能力的测试道路、系统及方法
US11904890B2 (en) * 2020-06-17 2024-02-20 Baidu Usa Llc Lane change system for lanes with different speed limits
US11796336B2 (en) * 2020-12-10 2023-10-24 FEV Group GmbH Systems, methods and computer program products for determining routes for test drives of autonomous and/or partially autonomous vehicles
JP7380542B2 (ja) * 2020-12-23 2023-11-15 トヨタ自動車株式会社 自動運転システム、及び異常判定方法
EP4080370B1 (en) * 2021-04-23 2024-04-03 Zenseact AB Vehicle software shadow mode testing
CN114061596B (zh) * 2021-11-19 2024-03-22 北京国家新能源汽车技术创新中心有限公司 自动驾驶定位方法、系统、测试方法、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6355780B2 (ko) * 1981-09-07 1988-11-04 Tokyo Shibaura Electric Co
JP2002286455A (ja) * 2001-03-26 2002-10-03 Mazda Motor Corp 車両の遠隔診断方法、車両用遠隔診断システム、車両用制御装置、車両用遠隔診断装置、並びにコンピュータ・プログラム製品
JP2007212462A (ja) * 2006-02-08 2007-08-23 Robert Bosch Gmbh 圧力測定装置および圧力測定装置のパラメータ化方法
JP2016058912A (ja) * 2014-09-10 2016-04-21 株式会社デンソー 車載カメラ診断装置
US20180188037A1 (en) * 2016-12-30 2018-07-05 DeepMap Inc. Occupancy Map Updates Based on Sensor Data Collected by Autonomous Vehicles

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4119900A (en) 1973-12-21 1978-10-10 Ito Patent-Ag Method and system for the automatic orientation and control of a robot
US9043073B2 (en) * 2011-11-16 2015-05-26 Flextronics Ap, Llc On board vehicle diagnostic module
US8718861B1 (en) * 2012-04-11 2014-05-06 Google Inc. Determining when to drive autonomously
US9719801B1 (en) 2013-07-23 2017-08-01 Waymo Llc Methods and systems for calibrating sensors using road map data
EP2922033B1 (en) 2014-03-18 2018-11-21 Volvo Car Corporation A vehicle sensor diagnosis system and method and a vehicle comprising such a system
JP6220711B2 (ja) * 2014-03-26 2017-10-25 株式会社日本総合研究所 車両状態診断システム、及び移動体の車両状態診断方法
US9996986B2 (en) * 2014-08-28 2018-06-12 GM Global Technology Operations LLC Sensor offset calibration using map information
DE102015218041A1 (de) * 2015-09-21 2017-03-23 Bayerische Motoren Werke Ag Verfahren und Vorrichtung zur Bereitstellung von Daten für eine Geometriekarte für ein autonomes oder automatisiertes Fahren eines Fahrzeugs
US9916703B2 (en) 2015-11-04 2018-03-13 Zoox, Inc. Calibration for autonomous vehicle operation
CN106096192B (zh) * 2016-06-27 2019-05-28 百度在线网络技术(北京)有限公司 一种无人驾驶车辆的测试场景的构建方法和装置
CN106198049B (zh) * 2016-07-15 2019-03-12 百度在线网络技术(北京)有限公司 真实车辆在环测试系统和方法
JP2018008652A (ja) * 2016-07-15 2018-01-18 株式会社ジェイテクト ステアリング装置
EP3309721A1 (en) * 2016-09-23 2018-04-18 KPIT Technologies Ltd. Autonomous system validation
DE102016218815B4 (de) 2016-09-29 2020-07-30 Audi Ag Verfahren zur Auswahl eines Streckenverlaufs für einen Emissionstest
JP2018096715A (ja) * 2016-12-08 2018-06-21 トヨタ自動車株式会社 車載センサキャリブレーションシステム
CN108267322A (zh) * 2017-01-03 2018-07-10 北京百度网讯科技有限公司 对自动驾驶性能进行测试的方法和系统
US10268195B2 (en) * 2017-01-06 2019-04-23 Qualcomm Incorporated Managing vehicle driving control entity transitions of an autonomous vehicle based on an evaluation of performance criteria
JP6355780B1 (ja) * 2017-03-08 2018-07-11 三菱電機株式会社 車両退避装置および車両退避方法
US10846947B2 (en) * 2017-03-31 2020-11-24 Honeywell International Inc. System and method for analyzing vehicle systems during vehicle travel
US10268203B2 (en) * 2017-04-20 2019-04-23 GM Global Technology Operations LLC Calibration validation for autonomous vehicle operations
JP6822309B2 (ja) * 2017-05-16 2021-01-27 株式会社デンソー 自動運転支援装置および自動運転支援方法
CN107727411B (zh) * 2017-10-30 2019-09-27 青岛慧拓智能机器有限公司 一种自动驾驶车辆测评场景生成系统及方法
WO2019144222A1 (en) * 2018-01-24 2019-08-01 Clearpath Robotics Inc. Systems and methods for maintaining vehicle state information
US10755007B2 (en) * 2018-05-17 2020-08-25 Toyota Jidosha Kabushiki Kaisha Mixed reality simulation system for testing vehicle control system designs

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6355780B2 (ko) * 1981-09-07 1988-11-04 Tokyo Shibaura Electric Co
JP2002286455A (ja) * 2001-03-26 2002-10-03 Mazda Motor Corp 車両の遠隔診断方法、車両用遠隔診断システム、車両用制御装置、車両用遠隔診断装置、並びにコンピュータ・プログラム製品
JP2007212462A (ja) * 2006-02-08 2007-08-23 Robert Bosch Gmbh 圧力測定装置および圧力測定装置のパラメータ化方法
JP2016058912A (ja) * 2014-09-10 2016-04-21 株式会社デンソー 車載カメラ診断装置
US20180188037A1 (en) * 2016-12-30 2018-07-05 DeepMap Inc. Occupancy Map Updates Based on Sensor Data Collected by Autonomous Vehicles

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102536446B1 (ko) 2021-11-29 2023-05-26 주식회사 와이즈오토모티브 실도로 환경에서 복수의 평가 장치를 이용한 자율주행 차량의 장애물 인지 성능 평가 장치 및 방법
KR20230079855A (ko) 2021-11-29 2023-06-07 주식회사 와이즈오토모티브 자율 주행 차량의 장애물 인지 성능 평가 장치 및 방법
KR20230095177A (ko) * 2021-12-21 2023-06-29 한국전자기술연구원 실제 도로 상황을 반영한 시뮬레이터용 도로교통 시나리오 생성 방법 및 시스템

Also Published As

Publication number Publication date
JP2022510959A (ja) 2022-01-28
JP7271669B2 (ja) 2023-05-11
US20210229686A1 (en) 2021-07-29
KR102503572B1 (ko) 2023-02-24
US20200189608A1 (en) 2020-06-18
WO2020123195A1 (en) 2020-06-18
EP3877229A4 (en) 2022-07-27
US10960894B2 (en) 2021-03-30
CN113272198A (zh) 2021-08-17
EP3877229A1 (en) 2021-09-15

Similar Documents

Publication Publication Date Title
KR102503572B1 (ko) 자율 주행 차량들에 대한 자동화된 성능 검사들
US11537133B2 (en) Dynamic routing for autonomous vehicles
JP7149244B2 (ja) 自律車両用の交通信号応答
CN111295629B (zh) 检测并响应于自动驾驶车辆的交通改向
CN111480174B (zh) 为自动驾驶车辆建议替代接载和放下位置的方法和系统
US11804136B1 (en) Managing and tracking scouting tasks using autonomous vehicles
CN113692373B (zh) 自动驾驶车辆服务的滞留和范围分析
US11885639B2 (en) Generating scouting objectives
US11774259B2 (en) Mapping off-road entries for autonomous vehicles
US11932278B2 (en) Method and apparatus for computing an estimated time of arrival via a route based on a degraded state of a vehicle after an accident and/or malfunction
US11341847B1 (en) Method and apparatus for determining map improvements based on detected accidents
US11480436B2 (en) Method and apparatus for requesting a map update based on an accident and/or damaged/malfunctioning sensors to allow a vehicle to continue driving
US11845469B2 (en) Yellow light durations for autonomous vehicles
AU2018361251B2 (en) Detecting and responding to traffic redirection for autonomous vehicles

Legal Events

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