KR20200037738A - 자율 주행 차량을 위한 나선형 경로 기반의 삼중 포인트 회전 계획 - Google Patents
자율 주행 차량을 위한 나선형 경로 기반의 삼중 포인트 회전 계획 Download PDFInfo
- Publication number
- KR20200037738A KR20200037738A KR1020197024879A KR20197024879A KR20200037738A KR 20200037738 A KR20200037738 A KR 20200037738A KR 1020197024879 A KR1020197024879 A KR 1020197024879A KR 20197024879 A KR20197024879 A KR 20197024879A KR 20200037738 A KR20200037738 A KR 20200037738A
- Authority
- KR
- South Korea
- Prior art keywords
- path
- rotation path
- autonomous vehicle
- point
- vehicle
- Prior art date
Links
- 230000008859 change Effects 0.000 claims abstract description 36
- 230000004044 response Effects 0.000 claims abstract description 11
- 238000000034 method Methods 0.000 claims description 45
- 238000012545 processing Methods 0.000 claims description 31
- 238000001514 detection method Methods 0.000 claims description 12
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 238000013461 design Methods 0.000 abstract description 7
- 230000006870 function Effects 0.000 description 34
- 238000004891 communication Methods 0.000 description 17
- 230000008569 process Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 9
- 230000001133 acceleration Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 238000007405 data analysis Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 3
- 230000033001 locomotion Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000009429 electrical wiring Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000007420 reactivation Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Purposes 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/18—Propelling the vehicle
- B60W30/18009—Propelling the vehicle related to particular drive situations
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Estimation 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/02—Estimation 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
- B60W40/06—Road conditions
- B60W40/072—Curvature of the road
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Purposes 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/18—Propelling the vehicle
- B60W30/18009—Propelling the vehicle related to particular drive situations
- B60W30/18036—Reversing
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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
- B60W10/00—Conjoint control of vehicle sub-units of different type or different function
- B60W10/20—Conjoint control of vehicle sub-units of different type or different function including control of steering systems
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Purposes 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/10—Path keeping
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Purposes 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/14—Adaptive cruise control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Estimation 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/02—Estimation 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
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Estimation 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/10—Estimation 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 vehicle motion
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
- B60W60/0011—Planning or execution of driving tasks involving control alternatives for a single driving scenario, e.g. planning several paths to avoid obstacles
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
- B60W60/0025—Planning or execution of driving tasks specially adapted for specific operations
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B62—LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
- B62D—MOTOR VEHICLES; TRAILERS
- B62D15/00—Steering not otherwise provided for
- B62D15/02—Steering position indicators ; Steering position determination; Steering aids
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0217—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with energy consumption, time reduction or distance reduction criteria
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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
- B60W2710/00—Output or target parameters relating to a particular sub-units
- B60W2710/20—Steering systems
- B60W2710/207—Steering angle of wheels
-
- G05D2201/0213—
Landscapes
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Transportation (AREA)
- Mechanical Engineering (AREA)
- Physics & Mathematics (AREA)
- Aviation & Aerospace Engineering (AREA)
- Mathematical Physics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Traffic Control Systems (AREA)
- Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
Abstract
일 실시예에 있어서, 자율 주행 차량(ADV)에 대해 삼중 포인트 회전을 진행하는 청구에 응답하여, 최대 전방 곡률 변화율을 기반으로 제1 나선 함수를 이용하여 전방 회전 경로를 생성한다. 최대 후방 곡률 변화율을 기반으로 제2 나선 함수를 이용하여 후방 회전 경로를 생성한다. 전방 곡률 변화율 및 후방 곡률 변화율은 ADV에 관련된 최대 전방 회전 각도 및 최대 후방 회전 각도를 기반으로 확정될 수 있으며, 최대 전방 회전 각도 및 최대 후방 회전 각도는 ADV의 차량 규격 또는 차량 설계의 일부분으로 지정될 수 있다. 후방 회전 경로는 전방 회전 경로의 종점으로부터 시작된다. 이어서, 삼중 포인트 회전 경로는 전방 회전 경로 및 후방 회전 경로를 기반으로 생성된다. ADV가 삼중 포인트 회전 경로에 따라 주행되도록 하나 또는 다수의 적당한 제어 명령을 발행한다.
Description
본 개시의 실시예는 일반적으로 자율 주행 차량에 대한 조작에 관한 것이다. 보다 구체적으로, 본 개시의 실시예는 자율 주행 차량의 삼중 포인트 회전을 계획하기 위한 기술에 관한 것이다.
자율 주행 모드로 운행(예컨대, 무인 주행)하는 차량은 승객, 특히는 운전자를 운전 관련의 직책으로부터 해방시킬 수 있다. 자율 주행 모드로 운행할 경우, 차량은 차량용 센서를 이용하여 각 위치로 인도함으로써, 차량이 인간-컴퓨터 상호 작용이 최대한으로 적은 경우 또는 아무런 승객도 없는 일부의 경우에서 주행하는 것을 허용한다.
운동 계획 및 제어는 자율 주행 중의 핵심 조작이다. 삼중 포인트 회전을 진행하여야 할 경우, 예컨대 도로 내에서 U형 회전을 진행할 경우, 해당 도로가 정지 또는 후진 없이 연속적인 U형 회전을 진행하기에 충분한 폭이 없을 때, 차량은 반드시 전방 회전을 진행하여야 하고, 대다수의 나라에서, 차량은 반드시 좌전방 회전을 진행하여 차선의 경계로 향하여야 한다. 이어서, 차량은 후방 회전을 진행하여 경계를 떠난다. 최종으로, 차량은 목표 차선에 진입하도록 전방으로 이동한다. 이러한 삼중 포인트 회전 경로를 계획하는 것은 아주 복잡하다. 자율 주행 차량이 삼중 포인트 회전을 진행하도록 계획하고 제어하는 효과적인 방식이 항상 부족하다.
제1 양태에 있어서, 본개시는 자율 주행 차량을 조작하기 위한 컴퓨터 구현 방법을 제공한다. 해당 방법은, 자율 주행 차량(ADV)에 대해 삼중 포인트 회전을 진행하는 청구에 응답하여, ADV에 관련된 최대 전방 곡률 변화율을 기반으로 제1 나선 함수를 이용하여, ADV의 현재 차량 상태를 기반으로 시작되는 전방 회전 경로를 생성하는 단계와, ADV에 관련된 최대 후방 곡률 변화율을 기반으로 제2 나선 함수를 이용하여, 전방 회전 경로의 종점으로부터 시작되는 후방 회전 경로를 생성하는 단계와, 전방 회전 경로 및 후방 회전 경로를 기반으로 삼중 포인트 회전 경로를 생성하는 단계와, 삼중 포인트 회전 경로에 따라 ADV가 주행되도록 제어하기 위해 하나 또는 다수의 제어 명령을 발행하는 단계를 포함한다.
제2 양태에 있어서, 명령이 저장된 비 일시적 컴퓨터 판독 가능한 매체를 제공한다. 해당 명령이 프로세서에 의해 실행될 경우 프로세서가 조작을 실행하도록 하며, 해당 조작은, 자율 주행 차량(ADV)에 대해 삼중 포인트 회전을 진행하는 청구에 응답하여, ADV에 관련된 최대 전방 곡률 변화율을 기반으로 제1 나선 함수를 이용하여, ADV의 현재 차량 상태를 기반으로 시작되는 전방 회전 경로를 생성하는 단계와, ADV에 관련된 최대 후방 곡률 변화율을 기반으로 제2 나선 함수를 이용하여, 전방 회전 경로의 종점으로부터 시작되는 후방 회전 경로를 생성하는 단계와, 전방 회전 경로 및 후방 회전 경로를 기반으로 삼중 포인트 회전 경로를 생성하는 단계와, 삼중 포인트 회전 경로에 따라 ADV가 주행되도록 제어하기 위해 하나 또는 다수의 제어 명령을 발행하는 단계를 포함한다.
제3 양태에 있어서, 데이터 처리 시스템을 제공한다. 해당 데이터 시스템은 프로세서 및 메모리 장치를 포함하며, 메모리 장치는 프로세서에 연결되어 명령을 저장하고, 해당 명령이 프로세서에 의해 실행될 경우 프로세서가 조작을 실행하도록 하되, 해당 조작은, 자율 주행 차량(ADV)에 대해 삼중 포인트 회전을 진행하는 청구에 응답하여, ADV에 관련된 최대 전방 곡률 변화율을 기반으로 제1 나선 함수를 이용하여, ADV의 현재 차량 상태를 기반으로 시작되는 전방 회전 경로를 생성하는 단계와, ADV에 관련된 최대 후방 곡률 변화율을 기반으로 제2 나선 함수를 이용하여, 전방 회전 경로의 종점으로부터 시작되는 후방 회전 경로를 생성하는 단계와, 전방 회전 경로 및 후방 회전 경로를 기반으로 삼중 포인트 회전 경로를 생성하는 단계와, 삼중 포인트 회전 경로에 따라 ADV가 주행되도록 제어하기 위해 하나 또는 다수의 제어 명령을 발행하는 단계를 포함한다.
본 개시의 실시예는 첨부된 도면들 중의 각 도면에서 예시적이나 비 한정적인 방식으로 도시되며, 첨부된 도면들 중의 동일한 참조 부호는 유사한 구성 요소를 지시한다.
도1은 일 실시예에 따른 네트워크 시스템을 나타내는 블록도이다.
도2는 일 실시예에 따른 자율 주행 차량의 예시를 나타내는 블록도이다.
도3a 내지 도3b는 일 실시예에 따른 자율 주행 차량에 이용되는 감지 및 계획 시스템의 예시를 나타내는 블록도이다.
도4는 일 실시예에 따른 삼중 포인트 회전 운전 정경을 나타내는 도면이다.
도5는 일 실시예에 따른 계획 모듈의 예시를 나타내는 블록도이다.
도6은 일 실시예에 따른 자율 주행 차량을 위한 삼중 포인트 회전 경로를 생성하는 과정을 나타내는 흐름도이다.
도7은 일 실시예에 따른 데이터 처리 시스템을 나타내는 블록도이다.
도1은 일 실시예에 따른 네트워크 시스템을 나타내는 블록도이다.
도2는 일 실시예에 따른 자율 주행 차량의 예시를 나타내는 블록도이다.
도3a 내지 도3b는 일 실시예에 따른 자율 주행 차량에 이용되는 감지 및 계획 시스템의 예시를 나타내는 블록도이다.
도4는 일 실시예에 따른 삼중 포인트 회전 운전 정경을 나타내는 도면이다.
도5는 일 실시예에 따른 계획 모듈의 예시를 나타내는 블록도이다.
도6은 일 실시예에 따른 자율 주행 차량을 위한 삼중 포인트 회전 경로를 생성하는 과정을 나타내는 흐름도이다.
도7은 일 실시예에 따른 데이터 처리 시스템을 나타내는 블록도이다.
아래에 논술하는 세부 사항들을 참조로 본 개시의 각종의 실시예 및 양태에 대한 설명을 진행하기로 하며, 첨부된 도면에서 상기 각종의 실시예들을 나타내기로 한다. 아래의 설명 및 첨부된 도면은 본 개시에 대한 설명일 뿐, 본 개시에 대한 한정으로 해석하여서는 아니된다. 본 개시의 각종의 실시예들에 대한 전면적인 이해를 제공하기 위하여 여러가지 특정된 세부 사항에 대한 설명을 진행하기로 한다. 그러나, 일부의 경우에 있어서, 본 개시의 실시예에 대한 간결한 논술을 위하여, 공지의 세부 사항 또는 전통적인 세부 사항에 대한 설명은 생략하기로 한다.
본 명세서에서 "일 실시예" 또는 "실시예"에 대한 언급은 해당 실시예를 결부하여 설명한 특정의 특징, 구조, 특성이 본 개시의 적어도 하나의 실시예에 포함될 수 있음을 의미한다. 문구 "일 실시예에 있어서"가 본 명세서의 여러 곳에서 나타나는 것은 반드시 모두 동일한 실시예를 지시하는 것이 아니다.
따라서, 나선 함수를 기반으로 생성한 자유 공간 나선 경로는 삼중 포인트 회전 기간의 전방 회전 경로 및 후방 회전 경로를 표시하도록 이용된다. 일 실시예에 의하면, 자율 주행 차량(ADV)에 대해 삼중 포인트 회전을 진행하는 청구에 응답하여, 최대 전방 곡률 변화율을 기반으로 제1 나선 함수를 이용하여 전방 회전 경로를 생성한다. 최대 후방 곡률 변화율을 기반으로 제2 나선 함수를 이용하여 후방 회전 경로를 생성한다. 전방 곡률 변화율 및 후방 곡률 변화율은 ADV에 관련된 최대 전방 회전 각도 및 최대 후방 회전 각도를 기반으로 확정될 수 있으며, 최대 전방 회전 각도 및 최대 후방 회전 각도는 ADV의 차량 명세서 또는 차량 설계의 일부분으로 지정될 수 있다. 후방 회전 경로는 전방 회전 경로의 종점으로부터 시작된다. 이어서, 삼중 포인트 회전 경로는 전방 회전 경로 및 후방 회전 경로를 기반으로 생성된다. 삼중 포인트 회전 경로에 따라 ADV가 주행되도록 하나 또는 다수의 적당한 제어 명령이 발행된다.
일 실시예에 의하면, 후방 회전 경로의 종점으로부터 시작되는 생성된 전방 직선 경로, 삼중 포인트 회전 경로는 전방 회전 경로, 후방 회전 경로 및 전방 직선 경로를 함께 연결시켜 생성된다. 전방 직선 경로는 ADV를 목표 차선로 주행시키도록 차선 변환 방안에 따라 후방 회전 경로의 종점으로부터 생성된다.
일 실시예에 있어서, 제1 나선 함수는, 전방 회전 경로를 따른 포인트 각각에 대해, 전방 나선 경로의 시작점에서의 ADV의 초기 전진 방향(a) 및 초기 곡률(b)을 기반으로 전진 방향(θ)을 확정하도록 구성된다. 전진 방향(θ)은 각 포인트와 시작점 사이의 거리(s) 및 ADV의 최대 곡률 변화율(c)을 기반으로 더 확정된다. 일 실시예에 있어서, 주어진 포인트의 전진 방향(θ)은 방정식: θ=a+b*s+c*s2/2에 따라 확정된다. 일 실시예에 있어서, 제1 나선 경로에 따른 주어진 포인트의 좌표(x, y)는 방정식: x= 0 및 y= 0에 따라 확정된다. 좌표(x0, y0)는 제1 나선 경로의 시작점에서의 ADV의 초기 위치를 표시한다. 제2 나선 함수의 구성은 제1 나선 함수와 유사하다.
도1은 본 개시의 일 실시예에 따른 자율 주행 차량의 네트워크 구성을 나타내는 블록도이다. 도1을 참조하면, 네트워크 구성(100)은 네트워크(102)를 통해 하나 또는 다수의 서버(103 내지 104)에 통신 가능하게 연결될 수 있는 자율 주행 차량(101)을 포함한다. 하나의 자율 주행 차량이 도시되었으나, 다수의 자율 주행 차량이 네트워크(102)를 통해 서로 연결되거나 및/또는 서버(103 내지 104)에 연결될 수 있다. 네트워크(102)는 임의의 유형의 네트워크일 수 있으며, 예컨대, 유선 또는 무선의 근거리 통신망(LAN), 인터넷과 같은 광역 네트워크(WAN), 셀룰러 네트워크, 위성 네트워크 또는 이들의 조합일 수 있다. 서버(103 내지 104)는 임의의 유형의 서버 또는 서버 클러스터일 수 있으며, 예컨대, 웹 또는 클라우드 서버, 애플리케이션 서버, 백엔드 서버 또는 이들의 조합일 수 있다. 서버(103 내지 104)는 데이터 분석 서버, 콘텐츠 서버, 교통 정보 서버, 지도 및 관심 지점(MPOI) 서버 또는 위치 서버 등일 수 있다.
자율 주행 차량은 운전자로부터의 입력이 아주 적거나 없이 환경을 통과하도록 차량을 인도하는 자율 주행 모드에 처하도록 설정될 수 있는 차량을 가리킨다. 이러한 자율 주행 차량은 차량이 운행하는 환경에 관한 정보를 검출하도록 구성된 하나 또는 다수의 센서를 구비하는 센서 시스템을 포함할 수 있다. 상기 차량 및 이에 관련된 제어 장치는 검출된 정보를 이용하여 상기 환경을 통과하도록 인도한다. 자율 주행 차량(101)은 수동 모드, 완전 자율 주행 모드 또는 부분 자율 주행 모드에서 운행될 수 있다.
일 실시예에 있어서, 자율 주행 차량(101)은 감지 및 계획 시스템(110), 차량 제어 시스템(111), 무선 통신 시스템(112), 사용자 인터페이스 시스템(113), 인포테인먼트 시스템(114) 및 센서 시스템(115)을 포함하나, 이에 한정되지 않는다. 자율 주행 차량(101)은 일반 차량에 포함된 일부의 상용 부재, 예컨대, 엔진, 휠, 조향 휠, 변속기 등을 더 포함할 수 있으며, 상기 부재는 차량 제어 시스템(111) 및/또는 감지 및 계획 시스템(110)을 통해 예컨대 가속 신호 또는 명령, 감속 신호 또는 명령, 조향 신호 또는 명령, 제동 신호 또는 명령 등과 같은 각종의 통신 신호 및/또는 명령을 이용하여 제어를 진행할 수 있다.
부재(110 내지 115)는 인터커넥트, 버스, 네트워크 또는 이들의 조합을 경유하여 서로 통신 가능하게 연결된다. 예를 들어, 부재(110 내지 115)는 계측 제어기 통신망(CAN) 버스를 경유하여 서로 통신 가능하게 연결된다. CAN 버스는 마이크로 제어 장치 및 장치가 호스트 컴퓨터가 없는 애플리케이션에서 서로 통신을 진행하는 것을 허용하도록 설계된 차량 버스 표준이다. 이는 원래에 차량 내부의 멀티플렉스 전기 배선을 위해 설계되었지만 많은 기타의 환경에서도 이용되는 메시지 기반의 프로토콜로이다.
현재 도2를 참조하면, 일 실시예에 있어서, 센서 시스템(115)은 하나 또는 다수의 카메라(211), 글로벌 위치 확인 시스템(GPS) 유닛(212), 관성 측정 유닛(IMU; 213), 레이다 유닛(214) 및 라이다(LIDAR) 유닛(215)을 포함하나, 이에 한정되지 않는다. GPS 시스템(212)은 자율 주행 차량의 위치에 관한 정보를 제공하도록 조작 가능한 송수신 장치를 포함할 수 있다. IMU 유닛(213)은 관성 가속도를 기반으로 자율 주행 차량의 위치 및 지향 변화를 감지할 수 있다. 레이다 유닛(214)은 무선 신호를 이용하여 자율 주행 차량의 지역 환경 내의 대상물을 감지하는 시스템을 표시한다. 일부의 실시예에 있어서, 대상물을 감지하는 것 이외에, 레이다 유닛(214)은 추가적으로 대상물의 속도 및/또는 전진 방향을 감지한다. LIDAR 유닛(215)은 레이저를 이용하여 자율 주행 차량이 위치하는 환경 중의 대상물을 감지할 수 있다. 기타의 시스템 부재 이외에, LIDAR 유닛(215)은 하나 또는 다수의 레이저 소스, 레이저 스캐너 및 하나 또는 다수의 탐지기를 더 포함할 수 있다. 카메라(211)는 자율 주행 차량의 주변 환경의 이미지를 포획하기 위한 하나 또는 다수의 장치를 포함할 수 있다. 카메라(211)는 스틸 카메라 및/또는 비디오 카메라일 수 있다. 카메라는 기계적으로 이동할 수 있으며, 예컨대, 카메라를 회전 및/또는 틸팅 플랫폼에 설치함으로써 기계적으로 이동할 수 있다.
센서 시스템(115)은 소나 센서, 적외선 센서, 조향 센서, 스로틀 센서, 제동 센서 및 오디오 센서(예컨대, 마이크로폰)과 같은 기타의 센서를 더 포함할 수 있다. 오디오 센서는 자율 주행 차량 주변의 환경으로부터 소리를 포획하도록 구성될 수 있다. 조향 센서는 조향 휠, 차량의 휠 또는 이들의 조합의 조향 각도를 감지하도록 구성될 수 있다. 스로틀 센서 및 제동 센서는 각각 차량의 스로틀 위치 및 제동 위치를 감지한다. 일부의 경우에, 스로틀 센서 및 제동 센서는 통합 스로틀/제동 센서로 통합될 수 있다.
일 실시예에 있어서, 차량 제어 시스템(111)은 조향 유닛(201), 스로틀 유닛(202)(가속 유닛으로도 지칭됨) 및 제동 유닛(203)을 포함하나, 이에 한정되지 않는다. 조향 유닛(201)은 차량의 방향 또는 전진 방향을 조정하도록 이용된다. 스로틀 유닛(202)은 전기 모터 또는 엔진의 속도를 제어하도록 이용되고, 전기 모터 또는 엔진의 속도는 나아가 차량의 속도 및 가속도를 제어한다. 제동 유닛(203)은 마찰을 제공하여 차량의 휠 또는 타이어를 감속시킴으로써 차량을 감속시킨다. 도2에 도시된 부재는 하드웨어, 소프트웨어 또는 이들의 조합으로 실시될 수 있음을 유의하여야 한다.
돌아가 도1을 참조하면, 무선 통신 시스템(112)은 자율 주행 차량(101)과 예컨대 장치, 센서, 기타의 차량 등과 같은 외부 시스템 사이의 통신을 허용한다. 예를 들어, 무선 통신 시스템(112)은 하나 또는 다수의 장치와 직접적으로 무선 통신을 진행하거나 통신 네트워크를 통해 무선 통신을 진행할 수 있으며, 예컨대, 네트워크(102)를 통해 서버(103 내지 104)와 통신을 진행할 수 있다. 무선 통신 시스템(112)은 임의의 셀룰러 통신 네트워크 또는 무선 근거리 통신망(WLAN)을 이용하여, 예컨대 WiFi를 이용하여 다른 부재 또는 시스템과 통신을 진행할 수 있다. 무선 통신 시스템(112)은 예컨대 적외선 링크, 블루투스 등을 이용하여 장치(예컨대, 승객의 모바일 장치, 표시 장치, 차량(101)내의 스피커)와 직접적으로 통신을 진행할 수 있다. 사용자 인터페이스 시스템(113)은 차량(101) 내에 실시된 주변 장치의 일부일 수 있으며, 예컨대, 키보드, 터치 스크린 표시 장치, 마이크로폰 및 스피커 등을 포함한다.
자율 주행 차량(101)의 기능 중의 일부 또는 전부는, 특히 자율 주행 모드에서 조작을 진행할 경우에, 감지 및 계획 시스템(110)으로 제어하거나 관리할 수 있다. 감지 및 계획 시스템(110)은 필요한 하드웨어(예컨대, 프로세서, 메모리 장치, 저장 장치) 및 소프트웨어(예컨대, 운영 체제, 계획 및 라우팅 프로그램)을 포함하여, 센서 시스템(115), 제어 시스템(111), 무선 통신 시스템(112) 및/또는 사용자 인터페이스 시스템(113)으로부터 정보를 수신하고, 수신된 정보를 처리하고, 출발지로부터 목적지까지의 노선 또는 경로를 계획하며, 이어서, 계획 및 제어 정보를 기반으로 차량(101)을 운전한다. 대안으로, 감지 및 계획 시스템(110)은 차량 제어 시스템(111)과 통합될 수 있다.
예를 들어, 승객인 사용자는 예컨대 사용자 인터페이스를 경유하여 여정의 시작 위치와 목적지를 지정할 수 있다. 감지 및 계획 시스템(110)은 여정 관련 데이터를 획득한다. 예를 들어, 감지 및 계획 시스템(110)은 서버(103 내지 104)의 일부분일 수 있는 MPOI 서버로부터 위치 및 노선 정보를 획득할 수 있다. 위치 서버는 위치 서비스를 제공하며, MPOI 서버는 지도 서비스 및 일부 위치의 POI를 제공한다. 대안으로, 이러한 유형의 위치 및 MPOI 정보는 감지 및 계획 시스템(110)의 영구 저장 장치에 로컬로 캐시될 수 있다.
자율 주행 차량(101)이 노선을 따라 이동할 경우, 감지 및 계획 시스템(110)은 교통 정보 시스템 또는 서버(TIS)로부터 실시간 교통 정보를 획득할 수도 있다. 서버(103 내지 104)는 제3 자 엔티티로 조작을 진행할 수 있음을 유의하여야 한다. 대안으로, 서버(103 내지 104)의 기능은 감지 및 계획 시스템(110)과 통합될 수 있다. 실시간 교통 정보, MPOI 정보와 위치 정보 및 센서 시스템(115)으로 검출하거나 감지한 실시간 지역 환경 데이터(예컨대, 장애물, 대상물, 주변 차량)를 기반으로, 감지 및 계획 시스템(110)은 최적의 노선을 계획하고, 계획된 노선에 따라 예컨대 제어 시스템(111)을 경유하여 차량(101)을 운전하여, 지정된 목적지에 안전하고 효율적으로 도착할 수 있다.
서버(103)는 각종의 클라이언트를 위해 데이터 분석 서비스를 실행하기 위한 데이터 분석 시스템일 수 있다. 일 실시예에 있어서, 데이터 분석 시스템(103)은 데이터 수집기(121) 및 기계 학습 엔진(122)을 포함한다. 데이터 수집기(121)는 각종의 차량(자율 주행 차량 또는 인간 운전자가 운전하는 일반 차량)으로부터 주행 통계 자료(123)를 수집한다. 주행 통계 자료(123)는 내려진 운전 명령(예컨대, 스로틀, 제동, 조향 명령) 및 차량의 센서로 상이한 시각에 포획한 차량의 응답(예컨대, 속도, 가속, 감속, 방향)을 지시하는 정보를 포함한다. 주행 통계 자료(123)는 상이한 시각에서의 주행 환경을 설명하는 정보, 예컨대, 노선(시작 위치 및 목적지 위치를 포함), MPOI, 도로 상태, 날씨 상태 등을 더 포함할 수 있다.
주행 통계 자료(123)를 기반으로, 기계 학습 엔진(122)은 다양한 목적을 위해 일련의 규칙, 알고리즘 및/또는 예측 모델(124)을 생성하거나 트레이닝한다. 일 실시예에 있어서, 알고리즘(124)은 전방 회전 경로를 생성하기 위한 제1 나선 함수 및 후방 회전 경로를 생성하기 위한 제2 나선 함수를 한정하고 구성하는 것을 포함한다. 이어서, 알고리즘(124)은 ADV에 업로딩되어 자율 주행 동안에 실시간으로 이용될 수 있다.
도3a 및 도3b는 일 실시예에 따른 자율 주행 차량와 함께 이용되는 감지 및 계획 시스템의 예시를 나타내는 블록도이다. 시스템(300)은 도1의 자율 주행 차량(101)의 일부분으로 실시될 수 있으며, 감지 및 계획 시스템(110), 제어 시스템(111) 및 센서 시스템(115)을 포함하나, 이에 한정되지 않는다. 도3a 내지 도3b를 참조하면, 감지 및 계획 시스템(110)은 위치 확인 모듈(301), 감지 모듈(302), 예측 모듈(303), 결책 모듈(304), 계획 모듈(305), 제어 모듈(306) 및 라우팅 모듈(307)을 포함하나, 이에 한정되지 않는다.
모듈(301 내지 307) 중의 일부 또는 전부는 소프트웨어, 하드웨어 또는 이들의 조합으로 실시될 수 있다. 예를 들어, 이러한 모듈은 영구 저장 장치(352)에 설치되고, 메모리 장치(351)에 로딩되며, 하나 또는 다수의 프로세서(미도시)에 의해 실행될 수 있다. 이러한 모듈 중의 일부 또는 전부는 도2의 차량 제어 시스템(111)의 일부 또는 전부의 모듈과 통신 가능하게 연결되거나 이들과 통합될 수 있음을 유의하여야 한다. 모듈(301 내지 307) 중의 일부는 통합 모듈로 통합될 수 있다.
위치 확인 모듈(301)은, 예컨대, GPS 유닛(212)을 이용하여, 자율 주행 차량(300)의 현재 위치를 확정하고, 사용자의 여정 또는 노선에 관련된 임의의 데이터를 관리한다. 위치 확인 모듈(301)(지도 및 노선 모듈로도 지칭됨)은 사용자의 여정 또는 노선에 관련된 임의의 데이터를 관리한다. 사용자는 예컨대 사용자 인터페이스를 경유하여 로그인하고 여정의 시작 위치와 목적지를 지정할 수 있다. 위치 확인 모듈(301)은 자율 주행 차량(300)의 기타의 부재와 통신을 진행하여, 예컨대 지도와 노선 정보(311)에 대한 통신을 진행하여, 여정 관련 데이터를 획득한다. 예를 들어, 위치 확인 모듈(301)은 위치 서버와 지도 및 POI(MPOI) 서버로부터 위치 및 노선 정보를 획득한다. 위치 서버는 위치 서비스를 제공하고, MPOI 서버는 지도 서비스 및 일부의 위치의 POI를 제공하며, 이는 지도와 노선 정보(311)의 일부분으로서 캐시될 수 있다. 자율 주행 차량(300)이 노선을 따라 이동할 경우, 위치 확인 모듈(301)은 교통 정보 시스템 또는 서버로부터 실시간 교통 정보를 획득할 수도 있다.
센서 시스템(115)에 의해 제공된 센서 데이터 및 위치 확인 모듈(301)에 의해 획득된 위치 확인 정보를 기반으로, 감지 모듈(302)은 주변 환경에 대한 감지를 확정한다. 감지 정보는 일반 운전자가 운전하고 있는 차량 주변에서 감지될 것이 무엇인 지를 표시할 수 있다. 감지는 예컨대 대상물 형식의 차선 구성, 교통 신호등, 다른 차량에 대한 상대적 위치, 보행자, 건축물, 횡단 보도 또는 키타의 교통 관련 표지(예컨대, 정지 표지, 양보 표지) 등을 포함할 수 있다. 차선 구성은 하나 또는 다수의 차선를 설명하는 정보, 예컨대, 차선의 형상(예컨대, 직선 또는 곡선), 차선의 넓이, 도로 중의 차선의 수량, 일방 통행 차선 또는 양방 통행 차선, 합류 차선 또는 분류 차선, 출구 차선 등을 포함한다.
감지 모듈(302)은 하나 또는 다수의 카메라로 포획한 이미지를 처리하고 분석하여 자율 주행 차량의 환경 중의 대상물 및/또는 특징을 인식하기 위한 컴퓨터 비전 시스템 또는 컴퓨터 비전 시스템의 기능을 포함할 수 있다. 상기 대상물은 교통 신호, 도로 경계, 기타의 차량, 보행자 및/또는 장애물 등을 포함할 수 있다. 컴퓨터 비전 시스템은 대상물 인식 알고리즘, 영상 추적 및 기타의 컴퓨터 비전 기술을 이용할 수 있다. 일부의 실시예에 있어서, 컴퓨터 비전 시스템은 환경을 제도하고, 대상물을 추정하며, 대상물의 속도를 추산하는 등을 진행할 수 있다. 감지 모듈(302)은 레이다 및/또는 LIDAR와 같은 기타의 센서로 제공하는 기타의 센서 데이터를 기반으로 대상물을 검출할 수도 있다.
각 대상물에 대하여, 예측 모듈(303)은 대상물이 이러한 경우에 어떠한 표현을 나타낼지를 예측한다. 예측은 한 세트의 지도/노선 정보(311) 및 교통 규칙(312)을 감안하여 해당 시각에 주행 환경을 감지한 감지 데이터를 기반으로 실행된다. 예를 들어, 대상물이 반대 방향에서의 차량이고 현재 주행 환경이 교차로를 포함할 경우, 예측 모듈(303)은 차량이 직진하는지 아니면 회전하는지를 예측한다. 감지 데이터가 교차로에 신호등이 존재하지 않는 것을 나타내면, 예측 모듈(303)은 차량이 교차로에 진입하기 전에 완전이 정지할 필요가 있는지 여부를 예측할 수 있다. 감지 데이터가 현재에 좌회전 전용 차선 또는 우회전 전용 차선에 위치하는 것을 나타내면, 예측 모듈(303)은 각각 차량이 좌회전을 할 가능성이 큰지 아니면 우회전을 할 가능성이 큰지를 예측할 수 있다.
각 대상물에 대하여, 결책 모듈(304)은 대상물을 어떻게 처리할 것인지에 관한 결정을 내린다. 예를 들어, 특정의 대상물(예컨대, 교차 노선 중의 다른 차량) 및 대상물을 설명하는 메타 데이터(예컨대, 속도, 방향, 회전 각도)에 대해, 결책 모듈(304)은 상기 대상물을 어떻게 대처할 지(예컨대, 추월, 양보, 정지, 통과)를 결정한다. 결책 모듈(304)은 영구 저장 장치(352)에 저장될 수 있는 교통 규칙 또는 운전 규칙(312)과 같은 규칙 집합에 따라 이러한 유형의 결정을 할 수 있다.
라우팅 모듈(307)은 출발지로부터 목적지까지의 하나 또는 다수의 노선 또는 경로를 제공하도록 구성된다. 시작 위치로부터 목적지 위치까지의 주어진 여정에 대해, 예컨대 사용자로부터 수신된 주어진 여정에 대해, 라우팅 모듈(307)은 노선과 지도 정보(311)를 획득하고, 시작 위치로부터 목적지 위치까지의 모든 가능한 노선 또는 경로를 확정한다. 라우팅 모듈(307)은 시작 위치로부터 목적지 위치까지의 각 노선을 확정한 지형도 양식의 기준선을 생성할 수 있다. 기준선은 기타의 차량, 장애물 또는 교통 상태와 같은 기타 사항의 아무런 간섭이 없는 이상적인 노선 또는 경로를 가리킨다. 즉, 도로 상에 기타의 차량, 보행자 또는 장애물이 존재하지 않을 경우, ADV는 기준선을 정확하고 가깝게 따라가야 한다. 지형도는 이어서 결책 모듈(304) 및/또는 계획 모듈(305)에 제공된다. 결책 모듈(304) 및/또는 계획 모듈(305)은 모든 가능한 노선을 검사하여, 위치 확인 모듈(301)로부터의 교통 상황, 감지 모듈(302)로 감지한 주행 환경 및 예측 모듈(303)로 예측한 교통 상황과 같은 기타의 모듈로 제공한 기타의 데이터를 감안하여 최적의 노선 중의 하나를 선택하고 수정한다. ADV를 제어하기 위한 실제 경로 또는 노선은 해당 시각의 주행 환경에 따라 라우팅 모듈(307)로 제공한 기준선과 근접하거나 상이할 수 있다.
감지된 대상물 각각에 대한 결정을 기반으로, 계획 모듈(305)은 라우팅 모듈(307)로 제공한 기준선을 기초로 이용하여 자율 주행 차량을 위해 경로 또는 노선 및 주행 파라미터(예컨대, 거리, 속도 및/또는 회전 각도)를 계획한다. 다시 말해서, 주어진 대상물에 대해, 결책 모듈(304)은 해당 대상물에 대해 무엇을 진행할 지를 결정하고, 계획 모듈(305)은 이를 어떻게 진행할 지를 확정한다. 예를 들어, 주어진 대상물에 대해, 결책 모듈(304)은 상기 대상물을 통과하는 것을 결정할 수 있으며, 계획 모듈(305)은 상기 대상물의 좌측으로 아니면 우측으로 통과할 지를 확정할 수 있다. 계획 및 제어 데이터는 계획 모듈(305)로 생성되며, 차량(300)이 다음 이동 주기(예컨대, 다음 노선/경로 구간)에서 어떻게 이동하는 지를 설명하는 정보를 포함한다. 예를 들어, 계획 및 제어 데이터는 차량(300)이 30 마일 시속(mph)의 속도로 10미터 이동하고, 이어서 25 mph의 속도로 우측 차선로 변환되는 것을 지시할 수 있다.
계획 및 제어 데이터를 기반으로, 제어 모듈(306)은 계획 및 제어 데이터로 한정한 노선 또는 경로에 따라 적당한 명령 또는 신호를 차량 제어 시스템(111)에 송신하여 자율 주행 차량을 제어하고 운전한다. 상기 계획 및 제어 데이터는 경로 또는 노선을 따라 상이한 시각에서 적당한 차량 설정 또는 주행 파라미터(예컨대, 스로틀, 제동 및 조향 명령)를 이용하여 차량을 노선 또는 경로의 제1 포인트에서 제2 포인트로 운전하기 위한 충분한 정보를 포함한다.
일 실시예에 있어서, 계획 단계는 다수의 계획 주기(운전 주기로도 지칭됨)에서, 예컨대,각 시간 간격은 100밀리 초(ms)의 각 시간 간격으로 실행된다. 계획 주기 또는 운전 주기 중의 각각에 대해, 하나 또는 다수의 제어 명령은 계획 및 제어 데이터를 기반으로 발송된다. 즉, 각 100 ms에 대해, 계획 모듈(305)은 다음 노선 구간 또는 경로 구간을 계획하며, 예컨대, 목표 위치 및 ADV가 목표 위치에 도착하기에 필요한 시간을 포함한다. 대안으로, 계획 모듈(305)은 구체적인 속도, 방향 및/또는 조향 각도 등을 진일보로 규정할 수 있다. 일 실시예에 있어서, 계획 모듈(305)은 다음의 기정 시간 구간(예컨대, 5초)을 대해 노선 구간 또는 경로 구간을 계획한다. 각 계획 주기에 대해, 계획 모듈(305)은 이전의 주기에서 계획한 목표 위치를 기반으로 현재 주기(예컨대, 다음 5초)를 위한 목표 위치를 계획한다. 제어 모듈(306)은 이어서 현재 주기의 계획 및 제어 데이터를 기반으로 하나 또는 다수의 제어 명령(예컨대, 스로틀, 제동, 조향 제어 명령)을 생성한다.
결책 모듈(304) 및 계획 모듈(305)은 통합 모듈로 통합될 수 있음을 유의하여야 한다. 결책 모듈(304)/계획 모듈(305)은 자율 주행 차량의 주행 경로를 확정하기 위한 항법 시스템 또는 항법 시스템의 기능을 포함할 수 있다. 예를 들어, 항법 시스템은 감지된 장애물을 실질적으로 피하면서 최종 목적지로 이어지는 도로 기반의 경로를 따라 자율 주행 차량을 일반적으로 전진시키는 경로를 따라 진행하는 자율 주행 차량의 이동을 실현하기 위한 일련의 속도 및 전진 방향을 확정할 수 있다. 목적지는 사용자 인터페이스 시스템(113)을 통해 진행하는 사용자 입력에 따라 설정될 수 있다. 항법 시스템은 자율 주행 차량을 주행시키면서 동적으로 운전 경로를 업데이트시킨다. 자율 주행 차량을 위한 운전 경로를 확정하도록, 항법 시스템은 GPS 시스템 및 하나 또는 다수의 지도로부터의 데이터를 병합시킬 수 있다
도4는 삼중 포인트 회전을 진행하는 전형적인 주행 정경을 나타낸다. 도4를 참조하면, 차량(400)이 삼중 포인트 회전을 진행하고자 할 경우, 차량(400)은 전방 회전 경로(401)에 따라 차선(410)의 차선 경계(411)를 향해 이동하여 좌측으로 회전한다. 차량이 도로의 우측으로 주행하는 대다수의 관할 구역에서, 전방 회전 경로(401)는 좌전방 회전 경로이다. 이어서, 차량(400)은 후방 회전 경로(402)(예컨대, 우후방 회전 경로)에 따라 차선 경계(412)를 향해 뒤로 이동한다. 이후, 차량(400)은 기본적으로 직선 전방 경로(403)를 따라 이동하여 목표 차선에 진입함으로써 삼중 포인트 회전을 완료한다.
도5는 일 실시예에 따른 계획 모듈의 예시를 나타내는 블록도이다. 도5를 참조하면, 계획 모듈(305)은 소프트웨어, 하드웨어 또는 이들의 조합으로 실시될 수 있는 전방 회전(FT) 경로 생성 장치(501), 후방 회전(BT) 경로 생성 장치(502), 삼중 포인트 회전(TT) 경로 생성 장치(503)를 포함하나, 이에 한정되지 않는다. 예를 들어, 모듈(501) 내지 모듈(503)은 메모리 장치에 로딩되고 하나 또는 다수의 프로세서(미도시)에 의해 실행될 수 있다. FT 경로 생성 장치(501)는 차량에 관련된 최대 FT 회전 각도(511)를 기반으로 제1 나선 함수를 이용하여 하나 또는 다수의 FT 경로를 생성하는 것을 책임진다. 최대 FT 회전 각도는 또한 차량이 급속한 전방 회전을 진행할 때 차량에 관련된 최대 전방 곡률 변화율을 확정한다. BT 생성 장치(502)는 차량에 관련된 최대 BT 회전 각도(512)를 기반으로 제2 나선 함수를 이용하여 하나 또는 다수의 BT 경로를 생성하는 것을 책임진다. 최대 BT 회전 각도는 또한 차량이 급속한 후방 회전을 진행할 때 최대 후방 곡률 변화율을 확정한다. TT 경로 생성 장치(503)는 FT 경로 생성 장치(501) 및 BT 경로 생성 장치(502)로 생성한 FT 경로 및 BT 경로를 기반으로 TT 경로를 생성하는 것을 책임진다. 계획 모듈(305)은 차량 주변의 주행 환경을 설명하는 감지 정보에 따라 선택된 삼중 포인트 회전 경로를 위한 속도 방안을 생성하기 위한 속도 방안 생성 장치(504)을 더 포함한다.
현재에 도4 및 도5를 참조하면, 일 실시예에 의하면, ADV에 대해 삼중 포인트 회전을 진행하는 청구에 응답하여, FT 경로 생성 장치(501)는 ADV에 관련된 최대 전방 곡률 변화율 또는 최대 전방 회전 각도(511)를 기반으로, 나선 함수(314)의 일부분으로서 획득된 제1 나선 함수를 이용하여 전방 회전 경로(401)를 생성한다. BT 경로 생성 장치는 최대 후방 곡률 변화율 또는 최대 후방 회전 각도(512)를 기반으로, (나선 함수(314)의 일부분으로서 획득되기도 하는) 제2 나선 함수를 이용하여 후방 회전 경로(402)를 생성한다. 전방 곡률 변화율 및 후방 곡률 변화율은 ADV에 관련된 최대 전방 회전 각도 및 최대 후방 회전 각도를 기반으로 확정될 수 있다. 최대 전방 회전 각도(511) 및 최대 후방 회전 각도(512)는 ADV의 차량 규격 또는 차량 설계의 일부분으로 지정될 수 있다. 후방 회전 경로는 전방 회전 경로의 종점으로부터 시작된다. 삼중 포인트 회전 경로 생성 장치(503)는 전방 회전 경로 및 후방 회전 경로를 기반으로 삼중 포인트 회전 경로를 생성한다. 삼중 포인트 회전 경로를 기반으로, 속도 방안 생성 장치(504)는 삼중 포인트 회전 경로를 위한 속도 방안을 생성한다. 속도 방안은 삼중 포인트 회전 경로를 따른 경로 포인트의 속도 및 전진 방향을 설명하는 정보를 포함한다. 이어서, 조향, 스로틀, 제동 명령과 같은 하나 또는 다수의 적당한 제어 명령은 ADV가 삼중 포인트 회전 경로에 따라 주행되도록 발행된다.
일 실시예에 의하면, 후방 회전 경로의 종점으로부터 시작되는 생성된 전방 직선 경로, 삼중 포인트 회전 경로는 전방 회전 경로, 후방 회전 경로 및 전방 직선 경로를 함께 연결시켜 생성된다. 전방 직선 경로는 ADV를 목표 차선로 주행시키도록 차선 변환 방안에 따라 후방 회전 경로의 종점으로부터 생성된다.
일 실시예에 있어서, 제1 나선 함수는, 전방 회전 경로를 따른 포인트 각각에 대해, 전방 나선 경로의 시작점에서의 ADV의 초기 전진 방향(a) 및 초기 곡률(b)을 기반으로 전진 방향(θ)을 확정하도록 구성된다. 전진 방향(θ)은 각 포인트와 시작점 사이의 거리(s) 및 ADV의 최대 곡률 변화율(c)을 기반으로 확정된다. 일 실시예에 있어서, 주어진 포인트의 전진 방향(θ)은 방정식: θ= a+b*s+c*s2/2에 따라 확정된다. 일 실시예에 있어서, 제1 나선 경로에 따른 주어진 포인트의 좌표(x, y)는 방정식: x= 0 및 y= 0에 따라 확정된다. 좌표(x0, y0)는 제1 나선 경로의 시작점에서의 ADV의 초기 위치를 표시한다. 제2 나선 함수는 제1 나선 함수와 유사하게 구성된다.
상술한 공식을 기반으로, 전방 회전 경로 중의 임의의 주어진 경로 포인트에 대해, 그의 전진 방향 및 좌표는 일련의 제약 조건에 영향 받는 아래와 같은 방정식 세트로 확정될 수 있다.
θ= a+b*s+c*s2/2
해당 일련의 제약 조건은, 1) 곡률dθ경로의 곡률 한도, 및 2) 좌표(x, y)가 차선 경계 내에 위치하는 것을 포함한다.
곡률 한도는 차량에 관련된 최대 전방 회전 각도 또는 최대 전방 곡률을 가리키며, 이는 차량의 설계 규격의 일부분일 수 있다. 차선 경계는 차량 주변의 주행 환경을 감지한 감지 정보를 기반으로 확정될 수 있다. 전방 회전 경로에 대해, (x0, y0)는 삼중 포인트 회전을 진행하기 전의 차량의 현재 위치를 표시한다. 변수s는 원래 위치(x0, y0)와 대응되는 경로 포인트(x, y) 사이에서 전방 회전 경로를 따른 거리를 가리킨다.
경로의 원점 또는 시작점(x0, y0)이 전방 회전 경로의 종점인 것 이외에, 상술한 방정식 세트는 후방 회전 경로를 도출하도록 이용될 수도 있다. 후방 회전 경로에 대해, 곡률 한도는 차량에 관련된 최대 후방 회전 각도 또는 최대 후방 곡률을 가리키며, 이는 차량의 설계 규격의 일부분일 수 있다. 특정의 차량에 대해, 최대 전방 회전 각도와 최대 후방 회전 각도는 상이할 수 있음을 유의하여야 한다. 예를 들어, 특정의 차량에 대해, 최대 전방 회전 각도는 30도일 수 있으며, 최대 후방 회전 각도는 40도일 수 있다. 유사하게, 최대 전방 곡률 또는 곡률 변화율 및 최대 후방 곡률 또는 곡률 변화율은 상이할 수 있다. 차선 경계는 차량 주변의 주행 환경을 감지한 감지 정보를 기반으로 확정될 수 있다. 변수s는 후방 회전 경로의 원래 위치(x0, y0)(예컨대, 전방 회전 경로의 종점)와 후방 회전 경로 상의 상응한 경로 포인트(x, y) 사이의 후방 회전 경로를 따른 거리를 표시한다.
도6은 일 실시예에 따른 자율 주행 차량의 삼중 포인트 회전을 생성하기 위한 과정의 예시를 나타내는 흐름도이다. 과정(600)은 처리 로직으로 실행할 수 있으며 상기 처리 로직은 소프트웨어, 하드웨어 또는 이들의 조합을 포함할 수 있다. 예를 들어, 과정(600)은 계획 모듈(305)에 의해 실행될 수 있다. 도6을 참조하면, 조작(601)에서, 처리 로직은 ADV의 삼중 포인트 회전을 진행하는 청구를 수신한다. 응답으로서, 단계(602)에서, 처리 로직은 ADV에 관련된 최대 전방 회전 각도 또는 최대 전방 곡률 변화율을 기반으로, 제1 나선 함수를 이용하여 전방 회전 경로를 생성한다. 전방 회전 경로는 기정의 근접도에 도달할 때까지 상대측의 차선 경계를 향해 연장된다. 조작(603)에서, 처리 로직은 ADV에 관련된 최대 후방 회전 각도 또는 최대 후방 곡률 변화율을 기반으로 제2 나선 함수를 이용하여 후방 회전 경로를 생성한다. 후방 회전 경로는 전방 회전 경로의 종점으로부터 시작된다. 후방 회전 경로는 차선 경계의 기정의 근접도 또는 전진 방향이 원하는 범위내에 도달할 때까지 다른 차선 경계를 향해 연장된다. 조작(604)에서, 처리 로직은 후방 회전 경로의 종점으로부터 전방 직선 경로를 생성한다. 전방 직선 경로는 예컨대 차선 변환 방안을 이용하여 차량이 목표 차선에 진입하는 것을 허용한다. 조작(605)에서, 처리 로직은 전방 회전 경로, 후방 회전 경로 및 전방 직선 경로를 기반으로 삼중 포인트 회전 경로를 생성한다. 그후에, 차량은 삼중 포인트 회전을 진행하도록 삼중 포인트 회전 경로에 따라 주행을 진행한다.
앞서 도시하고 나타낸 부재 중의 일부 또는 전부는 소프트웨어, 하드웨어 또는 이들의 조합으로 실시될 수 있음을 유의하여야 한다. 예를 들어, 이러한 부재는 영구 저장 장치에 설치되고 저장된 소프트웨어로 실시될 수 있으며, 상기 소프트웨어는 본 출원의 전반에 설명된 과정 또는 조작을 실시하도록 프로세서(미도시)를 통해 메모리 장치에 로딩되고 메모리 장치에서 실행될 수 있다. 대안으로, 이러한 부재는 주문형 하드웨어(예컨대, 집적 회로(예컨대, 주문형 집적 회로 또는 ASIC), 디지털 신호 프로세서(DSP) 또는 필드 프로그래머블 게이트 어레이(FPGA))에 프로그램되거나 내장되며, 애플리케이션으로부터 상응한 구동 프로그램 및/또는 운영 체제를 통해 액세스될 수 있는 실행 가능한 코드로 실시될 수 있다. 또한, 이러한 부재는 하나 또는 다수의 특정의 명령을 통해 소프트웨어 부재로 액세스 가능한 명령 집합 중의 일부로서, 프로세서 또는 프로세서 코어 중의 특정의 하드웨어 로직으로 실시될 수 있다.
도7은 본 개시의 일 실시예와 함께 이용될 수 있는 데이터 처리 시스템의 예시를 나타내는 블록도이다. 예를 들어, 시스템(1500)은 상술한 과정 또는 방법 중의 임의의 하나를 실행하는 상술한 데이터 처리 시스템 중의 임의의 하나, 예컨대 도1의 감지 및 계획 시스템(110) 또는 서버(103 내지 104) 중의 임의의 하나를 표시할 수 있다. 시스템(1500)은 여러가지 상이한 부재를 포함할 수 있다. 이러한 부재는 집적 회로(IC), 집적 회로의 일부, 이산형 전자 장치 또는 회로 기판(예컨대, 컴퓨터 시스템의 마더 보드 또는 애드 인 카드)에 적용되는 기타의 모듈로 실시될 수 있으며, 또는 기타의 방식으로 컴퓨터 시스템의 섀시 내부에 도입되는 부재로 실시될 수 있다.
또한, 컴퓨터 시스템의 많은 부재의 고차원 도면을 나타내고자 함을 유의하여야 한다. 그러나, 일부의 구현에는 추가적인 부재가 구비될 수 있고, 기타의 구현에는 도시된 부재의 상이한 배치가 구비될 수 있음을 이해하여야 한다. 시스템(1500)은 데스크탑형 컴퓨터, 랩탑형 컴퓨터, 태블릿 PC, 서버, 모바일 폰, 미디어 플레이어, 개인 디지털 보조 장치(PDA), 스마트 워치, 개인용 통신기, 게임기, 네트워크 라우터 또는 허브, 무선 액세스 포인트(AP) 또는 중계 장치, 셋톱 박스 또는 이들의 조합을 표시할 수 있다. 또한, 단 하나의 기계 또는 시스템이 도시되었으나, 용어 "기계" 또는 "시스템"은 본 원에 토론된 임의의 하나 또는 다수의 방법을 실행하도록 독립적으로 또는 공동으로 하나(또는 다수의) 명령 집합을 실행하는 기계 또는 시스템의 임의의 집합을 포함하는 것으로 이해되어야 한다.
일 실시예에 있어서, 시스템(1500)은 버스 또는 인터커넥트(1510)를 통해 연결되는 프로세서(1501), 메모리 장치(1503) 및 장치(1505 내지 1508)를 포함한다. 프로세서(1501)는 단일 프로세서 코어 또는 다중 프로세서 코어를 포함하는 단일 프로세서 또는 다중 프로세서를 표시할 수 있다. 프로세서(1501)는 마이크로 프로세서, 중앙 처리 유닛(CPU) 등과 같은 하나 또는 다수의 범용의 프로세서를 표시할 수 있다. 보다 구체적으로, 프로세서(1501)는 복잡한 명령 집합 컴퓨팅(CISC) 마이크로 프로세서, 축소된 명령 집합 컴퓨팅(RISC) 마이크로 프로세서, 매우 긴 명령어(VLIW) 마이크로 프로세서, 또는 기타의 명령 집합을 실시하는 프로세서, 또는 명령 집합의 조합을 실시하는 프로세서일 수 있다. 프로세서(1501)는 주문형 집적 회로(ASIC), 셀룰러 또는 베이스 밴드 프로세서, 필드 프로그래머블 게이트 어레이(FPGA), 디지털 신호 프로세서(DSP), 네트워크 프로세서, 그래픽 프로세서, 통신 프로세서, 암호화 프로세서, 코프로세서, 내장형 프로세서, 또는 명령을 처리할 수 있는 임의의 기타 유형의 로직과 같은 하나 또는 다수의 주문형 프로세서일 수도 있다.
초 저전압 프로세서와 같은 저전력 멀티 코어 프로세서 소켓일 수 있는 프로세서(1501)는 상기 시스템의 다양한 부재와 통신하기 위한 메인 프로세스 유닛 및 중앙 허브로서 작동될 수 있다. 이러한 프로세서는 시스템 온 칩(SoC)으로 실시될 수 있다. 프로세서(1501)는 본원에 설명된 조작 및 단계를 실행하기 위한 명령을 실행하도록 구성된다. 시스템(1500)은 표시 장치 제어 장치, 그래픽 프로세서 및/또는 표시 장치를 포함할 수 있는 선택적 그래픽 서브 시스템(1504)과 통신하는 그래픽 인터페이스를 더 포함할 수 있다.
프로세서(1501)는 일 실시예에서 주어진 양의 시스템 메모리를 제공하기 위해 다수의 메모리 장치를 통해 실시될 수 있는 메모리 장치(1503)와 통신할 수 있다. 메모리 장치(1503)는 랜덤 액세스 메모리(RAM), 동적 RAM(DRAM), 동기화 DRAM(SDRAM), 정적 RAM(SRAM) 또는 기타의 유형의 저장 장치와 같은 하나 또는 다수의 휘발성 저장 장치를 포함할 수 있다. 메모리 장치(1503)는 프로세서(1501) 또는 임의의 기타의 장치로 실행되는 명령 시퀀스를 포함하는 정보를 저장할 수 있다. 예를 들어, 다양한 운영 체제, 장치 드라이버, 펌웨어(예컨대, 입출력 기본 시스템 또는 BIOS), 및/또는 애플리케이션의 실행 가능한 코드 및/또는 데이터는 메모리(1503)에 로딩되고, 프로세서(1501)에 의해 실행될 수 있다. 운영 체제는 예컨대 로봇 운영 체제(ROS), Microsoft® 사의 Windows® 운영 체제, Apple 사의 Mac OS®/iOS®, Google® 사의 Android®, LINUX, UNIX, 또는 기타의 실시간 또는 내장형 운영 체제와 같은 임의의 유형의 운영 체제일 수 있다.
시스템(1500)은 네트워크 인터페이스 장치(1505), 선택적 입력 장치(1506) 및 기타의 선택적 IO 장치(1507)를 포함하는 장치(1505 내지 1508)와 같은 IO 장치를 더 포함할 수 있다. 네트워크 인터페이스 장치(1505)는 무선 송수신 장치 및/또는 네트워크 인터페이스 카드(NIC)를 포함할 수 있다. 상기 무선 송수신 장치는 WiFi 송수신 장치, 적외선 송수신 장치, 블루투스 송수신 장치, WiMax 송수신 장치, 무선 셀룰러 폰 송수신 장치, 위성 송수신 장치(예컨대, 글로벌 위치 확인 시스템(GPS) 송수신 장치) 또는 기타의 무선 주파수(RF) 송수신 장치 또는 이들의 조합일 수 있다. NIC는 이더넷 카드일 수 있다.
입력 장치(1506)는 마우스, 터치 패드, (표시 장치(1504)와 통합될 수 있는) 터치 감지 스크린, 스타일러스와 같은 포인터 장치 및/또는 키보드(예컨대, 터치 감지 스크린의 일부로 표시되는 물리적 키보드 또는 가상 키보드)를 포함할 수 있다. 예를 들어, 입력 장치(1506)는 터치 스크린에 결합된 터치 스크린 제어 장치를 포함할 수 있다. 터치 스크린 및 터치 스크린 제어 장치는 예컨대 용량식, 저항식, 적외선 및 표면 탄성파 기술뿐만 아니라 기타의 근접 센서 어레이 또는 터치 스크린과 접촉하는 하나 또는 다수의 포인트를 확정하기 위한 기타의 요소를 포함하나, 이에 한정되지 않는 다수의 터치 감지 기술 중 임의의 하나를 이용하여 이의 접촉 및 이동 또는 제동를 검출할 수 있다.
IO 장치(1507)는 오디오 장치를 포함할 수 있다. 오디오 장치는 음성 인식, 음성 복제, 디지털 녹음 및/또는 전화 기능과 같은 음성 작동 기능을 촉진시키기 위한 스피커 및/또는 마이크를 포함할 수 있다. 기타의 IO 장치(1507)는 범용 직렬 버스(USB) 포트, 병렬 포트, 직렬 포트, 프린터, 네트워크 인터페이스, 버스 브리지(예컨대, PCI-PCI 브리지) 센서(예컨대, 가속도계, 자이로 스코프, 자력계, 광 센서, 나침반, 근접 센서 등과 같은 모션 센서) 또는 이들의 조합을 포함할 수 있다. 장치(1507)는 사진 및 비디오 클립 녹화하는 것과 같은 카메라 기능을 촉진하도록 이용되는 고체 촬상 소자(CCD) 또는 상보성 금속산화물 반도체(CMOS) 광학 센서와 같은 광학 센서를 포함할 수 있는 이미징 프로세싱 서브 시스템(예컨대, 카메라)를 더 포함할 수 있다. 일부의 센서는 센서 허브(미도시)를 통해 인터커넥트(1510)에 연결될 수 있으나, 키보드 또는 열 센서와 같은 기타의 장치는 시스템(1500)의 특정의 구성 또는 설계에 따라 내장형 제어 장치(미도시)에 의해 제어될 수 있다.
데이터, 애플리케이션, 하나 또는 다수의 운영 체제 등과 같은 정보의 영구 저장을 제공하기 위해, 대용량 저장 장치(미도시)도 프로세서(1501)에 연결될 수 있다. 각종의 실시예에 있어서, 시스템 응답성을 향상시킬 뿐만 아니라 보다 얇고 가벼운 시스템 설계를 가능하게 하기 위해, 이러한 대용량 저장 장치는 고체 상태 장치(SSD)를 통해 실현될 수 있다. 그러나, 기타의 실시예에 있어서, 대용량 저장 장치는, 시스템 활동의 재작동에 있어서 빠른 전원 켜기를 실현할 수 있도록, 파워 다운 이벤트 동안 컨텍스트 상태 및 기타의 이러한 정보의 비 휘발성 저장을 가능하게 하기 위한 SSD 캐시로서 작용하는 보다 적은 양의 SSD 저장 장치를 구비하는 하드 디스크 드라이브(HDD)를 이용하여 주로 실현될 수 있다. 또한, 플래시 장치는 예를 들어 직렬 주변 인터페이스(serial peripheral interface; SPI)를 통해 프로세서 (1501)에 연결될 수 있다. 이러한 플래시 장치는 시스템의 기타의 펌웨어뿐만 아니라 BIOS를 포함하여 시스템 소프트웨어의 비 휘발성 저장을 제공할 수 있다.
저장 장치(1508)는 본원에 설명된 방법론 또는 기능 중의 임의의 하나 또는 다수를 실시하는 하나 또는 다수의 명령 세트 또는 소프트웨어(예컨대, 모듈, 유닛 및/또는 로직(1528))가 저장된 컴퓨터 액세스 가능한 저장 매체(1509)(기계 판독 가능한 저장 매체 또는 컴퓨터 판독 가능한 매체로도 지칭됨)을 포함할 수 있다. 처리 모듈/유닛/로직(1528)은 예컨대 계획 모듈(305), 제어 모듈(306)과 같은 상술한 부재 중의 임의의 하나를 표시할 수 있다. 처리 모듈/유닛/로직(1528)은 그의 실행 과정에 기계 액세스 가능한 저장 매체를 구성하기도 하는 데이터 처리 시스템(1500), 메모리 장치(1503) 및 프로세서(1501)에 의해 메모리 장치(1503) 및/또는 프로세서(1501) 내에 완전히 또는 적어도 부분적으로 상주될 수 있다. 처리 모듈/유닛/로직(1528)은 네트워크 인터페이스 장치(1505)를 경유하여 네트워크를 통해 송신되거나 수신될 수도 있다.
컴퓨터 판독 가능한 저장 매체(1509)는 전술한 일부의 소프트웨어 기능을 지속적으로 저장하도록 이용될 수도 있다. 컴퓨터 판독 가능한 저장 매체(1509)가 일 예시적인 실시예에서 단일 매체로 도시되었으나, 용어 "컴퓨터 판독 가능한 저장 매체"는 하나 또는 다수의 명령 세트를 저장하는 단일 매체 또는 다중 매체(예컨대, 집중형 또는 분산형 데이터 베이스 및/또는 관련된 캐시 및 서버)를 포함하는 것으로 시인되어야 한다. 용어 "컴퓨터 판독 가능한 저장 매체"는 또한 기계에 의해 실행되고 기계로 본 개시의 방법론 중의 임의의 하나 또는 다수를 실행하도록 하는 명령 세트를 저장하거나 인코딩할 수 있는 임의의 매체를 포함하는 것으로 시인되어야 한다. 따라서, 용어 "컴퓨터 판독 가능한 저장 매체"는 고체 상태 메모리, 광학 및 자기 매체, 또는 임의의 기타 비 일시적 기계 판독 가능한 매체를 포함하나, 이에 한정되지 않는 것으로 시인되어야 한다.
본원에 설명된 처리 모듈/유닛/로직(1528), 부재 및 기타의 특징은 이산형 하드웨어 부재로 실시되거나 ASIC, FPGA, DSP 또는 유사한 장치와 같은 하드웨어 부재의 기능에 통합될 수 있다. 또한, 처리 모듈/유닛/로직(1528)은 하드웨어 장치 내의 펌웨어 또는 기능 회로로 실시될 수 있다. 또한, 처리 모듈/유닛/로직(1528)은 임의의 조합으로 하드웨어 장치 및 소프트웨어 부재로 실현될 수 있다.
시스템(1500)은 데이터 처리 시스템의 다양한 부재로 도시되었으나, 부재를 상호 연결시키는 임의의 특정된 아키텍처 또는 방식을 나타내기 위한 것이 아니며, 이러한 세부 사항들은 본 개시의 실시예에 밀접한 관계가 있는 것이 아님을 유의하여야 한다. 보다 적은 부재 또는 보다 많은 부재를 구비하는 네트워크 컴퓨터, 핸드헬드 컴퓨터, 모바일 폰, 서버 및/또는 기타의 데이터 처리 시스템은 본 개시의 실시예와 함께 이용될 수도 있다.
전술한 상세한 설명의 일부분은 이미 컴퓨터 메모리 내의 데이터 비트에 대한 연산의 알고리즘 및 기호 표현에 관하여 제시되었다. 이러한 알고리즘 설명 및 표현은 데이터 처리 기술 분야의 숙련자가 자신의 연구 내용을 당업자에게 가장 효과적으로 전달하도록 이용되는 방식이다. 여기서, 알고리즘은 일반적으로 원하는 결과를 유도하는 조작의 일관성 있는 시퀀스로 시인된다. 해당 조작은 물리량을 물리적으로 조작하는 것이 요구되는 조작이다.
그러나, 이러한 용어와 유사한 용어 중의 전부는 적절한 물리량과 관련되며 이러한 물리량에 적용되는 편리한 라벨일 뿐임을 염두에 두어야 한다. 상술한 논술로부터 명백한 바와 같이 달리 명시하지 않는 한, 이하의 특허 청구 범위에 기재된 것과 같은 용어를 이용하는 논술은 명세서 전반에 걸쳐 컴퓨터 시스템의 레지스터 및 메모리 장치 내의 물리(전자)량으로 표현되는 데이터에 대해 조작을 진행하고 이를 컴퓨터 시스템 메모리 장치 또는 레지스터 또는 기타의 정보 저장 장치, 송신 장치 또는 표시 장치 내의 물리량으로 유사하게 표현되는 기타의 데이터로 변환시키는 컴퓨터 시스템 또는 유사한 전자 컴퓨팅 장치의 동작 및 처리를 가리키는 것을 자명할 것이다.
본 개시의 실시예는 본 원의 조작을 실행하기 위한 장치에 관한 것이기도 한다. 이러한 컴퓨터 프로그램은 비 휘발성 컴퓨터 판독 가능한 매체에 저장된다. 기계 판독 가능한 매체는 기계(예컨대, 컴퓨터)에 의해 판독 가능한 형태로 정보를 저장하기 위한 임의의 메카니즘을 포함한다. 예를 들어, 기계 판독 가능한(예를 들어, 컴퓨터 판독 가능한) 매체는 기계(예컨대, 컴퓨터) 판독 가능한 저장 매체(예컨대, 판독 전용 저장 장치("ROM"), 랜덤 액세스 저장 장치("RAM" 저장 매체, 광학 저장 매체, 플래시 장치)를 포함한다.
앞서 도면에 도시된 과정 또는 방법은 하드웨어(예컨대, 회로, 주문형 로직 등), 소프트웨어(예컨대, 비 일시적인 컴퓨터 판독 가능한 매체 상에 구현됨), 또는 이들의 조합을 포함하는 처리 로직으로 실행될 수 있다. 과정 또는 방법은 일부의 순차적인 조작을 감안하여 앞에서 설명되었으나, 기재된 조작 중의 일부는 다른 순서로 실행될 수 있음을 이해하여야 한다. 또한, 일부의 조작은 순차적인 것이 아니라 병렬로 실행될 수 있다.
본 개시의 실시예는 임의의 특정된 프로그래밍 언어를 참조하여 설명되지 않는다. 본원에 설명된 바와 같이 본 개시의 실시예의 교시를 구현하기 위해 다양한 프로그래밍 언어가 사용될 수 있음을 자명할 것이다.
앞서 설명한 명세서에 있어서, 본 개시의 실시예는 특정의 실시예를 참조하여 설명하였다. 아래의 특허 청구 범위에 기재된 본 개시의 보다 넓은 사상 및 범위를 벗어나지 않고서 다양한 변형을 진행할 수 있음을 자명할 것이다. 따라서, 명세서 및 도면은 한정적인 의미가 아니라 예시적인 의미로 간주되어야 한다.
Claims (21)
- 자율 주행 차량을 조작하기 위한 컴퓨터 구현 방법에 있어서,
상기 자율 주행 차량(ADV)에 대해 삼중 포인트 회전을 진행하는 청구에 응답하여, 상기 자율 주행 차량에 관련된 최대 전방 곡률 변화율을 기반으로 제1 나선 함수를 이용하여 전방 회전 경로를 생성하는 단계와 - 상기 전방 회전 경로는 상기 자율 주행 차량의 현재 차량 상태를 기반으로 시작되는 경로임-,
상기 자율 주행 차량에 관련된 최대 후방 곡률 변화율을 기반으로 제2 나선 함수를 이용하여, 상기 전방 회전 경로의 종점으로부터 시작되는 후방 회전 경로를 생성하는 단계와,
상기 전방 회전 경로 및 상기 후방 회전 경로를 기반으로 삼중 포인트 회전 경로를 생성하는 단계와,
상기 자율 주행 차량이 상기 삼중 포인트 회전 경로에 따라 주행되도록 제어하기 위해 하나 또는 다수의 제어 명령을 발행하는 단계를 포함하는 컴퓨터 구현 방법. - 제1항에 있어서,
상기 제1 나선 함수는,
상기 전방 회전 경로를 따른 다수의 포인트 각각에 대해, 전방 나선 경로의 시작점에서의 상기 자율 주행 차량의 초기 전진 방향(a) 및 초기 곡률(b)에 따라 전진 방향(θ)을 확정하도록 구성되는 컴퓨터 구현 방법. - 제2항에 있어서,
상기 전진 방향(θ)은, 각 포인트와 상기 시작점 사이의 거리(s) 및 상기 자율 주행 차량의 최대 곡률 변화율(c)을 기반으로 진일보 확정되는 컴퓨터 구현 방법. - 제3항에 있어서,
주어진 포인트의 전진 방향(θ)은 방정식 θ=a+b*s+c*s2/2으로 확정되는 컴퓨터 구현 방법. - 제4항에 있어서,
임의의 주어진 포인트의 전진 방향의 도함수(dθ)로 표시된 곡률은 상기 자율 주행 차량에 관련된 최대 곡률보다 작은 컴퓨터 구현 방법. - 제6항에 있어서,
상기 자율 주행 차량 주변의 주행 환경을 감지한 감지 정보를 기반으로, 상기 제1 나선 경로를 따른 임의의 주어진 포인트의 좌표(x, y)는 현재 차선의 차선 경계 내에 위치하는 컴퓨터 구현 방법. - 제1항에 있어서,
상기 후방 회전 경로의 종점으로부터 시작되는 전방 직선 경로를 생성하는 단계를 더 포함하되,
상기 삼중 포인트 회전 경로는 상기 전방 회전 경로, 상기 후방 회전 경로 및 상기 전방 직선 경로를 함께 연결시켜 생성되는 컴퓨터 구현 방법. - 제8항에 있어서,
상기 자율 주행 차량을 목표 차선로 주행시키도록, 차선 변환 방안에 따라 상기 후방 회전 경로의 종점으로부터 상기 전방 직선 경로를 생성하는 컴퓨터 구현 방법. - 명령이 저장된 비 일시적 컴퓨터 판독 가능한 매체에 있어서,
상기 명령이 프로세서에 의해 실행될 경우 상기 프로세서가 조작을 실행하도록 하며, 상기 조작은,
상기 자율 주행 차량(ADV)에 대해 삼중 포인트 회전을 진행하는 청구에 응답하여, 상기 자율 주행 차량에 관련된 최대 전방 곡률 변화율을 기반으로 제1 나선 함수를 이용하여 전방 회전 경로를 생성하는 단계와 - 상기 전방 회전 경로는 상기 자율 주행 차량의 현재 차량 상태를 기반으로 시작되는 경로임-,
상기 자율 주행 차량에 관련된 최대 후방 곡률 변화율을 기반으로 제2 나선 함수를 이용하여, 상기 전방 회전 경로의 종점으로부터 시작되는 후방 회전 경로를 생성하는 단계와,
상기 전방 회전 경로 및 상기 후방 회전 경로를 기반으로 삼중 포인트 회전 경로를 생성하는 단계와,
상기 자율 주행 차량이 상기 삼중 포인트 회전 경로에 따라 주행되도록 제어하기 위해 하나 또는 다수의 제어 명령을 발행하는 단계를 포함하는 컴퓨터 판독 가능한 매체. - 제10항에 있어서,
상기 제1 나선 함수는,
상기 전방 회전 경로를 따른 다수의 포인트 각각에 대해, 전방 나선 경로의 시작점에서의 상기 자율 주행 차량의 초기 전진 방향(a) 및 초기 곡률(b)에 따라 전진 방향(θ)을 확정하도록 구성되는 컴퓨터 판독 가능한 매체. - 제11항에 있어서,
상기 전진 방향(θ)은, 각 포인트와 상기 시작점 사이의 거리(s) 및 상기 자율 주행 차량의 최대 곡률 변화율(c)을 기반으로 진일보 확정되는 컴퓨터 판독 가능한 매체. - 제12항에 있어서,
주어진 포인트의 전진 방향(θ)은 방정식 θ=a+b*s+c*s2/2으로 확정되는 컴퓨터 판독 가능한 매체. - 제13항에 있어서,
임의의 주어진 포인트의 전진 방향의 도함수(dθ)로 표시된 곡률은 상기 자율 주행 차량에 관련된 최대 곡률보다 작은 컴퓨터 판독 가능한 매체. - 제15항에 있어서,
상기 자율 주행 차량 주변의 주행 환경을 감지한 감지 정보를 기반으로, 상기 제1 나선 경로를 따른 임의의 주어진 포인트의 좌표(x, y)는 현재 차선의 차선 경계 내에 위치하는 컴퓨터 판독 가능한 매체. - 데이터 처리 시스템에 있어서,
프로세서와,
상기 프로세서에 연결되어 명령을 저장하기 위한 메모리 장치를 포함하되,
상기 명령이 상기 프로세서에 의해 실행될 경우 상기 프로세서가 조작을 실행하도록 하며, 상기 조작은,
상기 자율 주행 차량(ADV)에 대해 삼중 포인트 회전을 진행하는 청구에 응답하여, 상기 자율 주행 차량에 관련된 최대 전방 곡률 변화율을 기반으로 제1 나선 함수를 이용하여 전방 회전 경로를 생성하는 단계와 - 상기 전방 회전 경로는 상기 자율 주행 차량의 현재 차량 상태를 기반으로 시작되는 경로임-,
상기 자율 주행 차량에 관련된 최대 후방 곡률 변화율을 기반으로 제2 나선 함수를 이용하여, 상기 전방 회전 경로의 종점으로부터 시작되는 후방 회전 경로를 생성하는 단계와,
상기 전방 회전 경로 및 상기 후방 회전 경로를 기반으로 삼중 포인트 회전 경로를 생성하는 단계와,
상기 자율 주행 차량이 상기 삼중 포인트 회전 경로에 따라 주행되도록 제어하기 위해 하나 또는 다수의 제어 명령을 발행하는 단계를 포함하는 데이터 처리 시스템. - 제17항에 있어서,
상기 제1 나선 함수는,
상기 전방 회전 경로를 따른 다수의 포인트 각각에 대해, 전방 나선 경로의 시작점에서의 상기 자율 주행 차량의 초기 전진 방향(a) 및 초기 곡률(b)에 따라 전진 방향(θ)을 확정하도록 구성되는 데이터 처리 시스템. - 제18항에 있어서,
상기 전진 방향(θ)은, 각 포인트와 상기 시작점 사이의 거리(s) 및 상기 자율 주행 차량의 최대 곡률 변화율(c)을 기반으로 진일보 확정되는 데이터 처리 시스템. - 제19항에 있어서,
주어진 포인트의 전진 방향(θ)은 방정식 θ=a+b*s+c*s2/2으로 확정되는 데이터 처리 시스템. - 제20항에 있어서,
임의의 주어진 포인트의 전진 방향의 도함수(dθ)로 표시된 곡률은 상기 자율 주행 차량에 관련된 최대 곡률보다 작은 데이터 처리 시스템.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2018/108355 WO2020062030A1 (en) | 2018-09-28 | 2018-09-28 | A spiral path based three-point turn planning for autonomous driving vehicles |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20200037738A true KR20200037738A (ko) | 2020-04-09 |
Family
ID=69953254
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020197024879A KR20200037738A (ko) | 2018-09-28 | 2018-09-28 | 자율 주행 차량을 위한 나선형 경로 기반의 삼중 포인트 회전 계획 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11267471B2 (ko) |
EP (1) | EP3652602B1 (ko) |
JP (1) | JP6932196B2 (ko) |
KR (1) | KR20200037738A (ko) |
CN (1) | CN111328385B (ko) |
WO (1) | WO2020062030A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230140131A (ko) | 2022-03-29 | 2023-10-06 | 충북대학교 산학협력단 | 나선형 최적화 기법과 황금 분할 탐색 기법을 활용한 베지어 곡선 기반의 지역 경로 계획 방법 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10988137B2 (en) * | 2018-12-04 | 2021-04-27 | Waymo Llc | Driveway maneuvers for autonomous vehicles |
CN114475602B (zh) * | 2020-11-12 | 2023-05-09 | 宇通客车股份有限公司 | 一种车辆、车辆调头方法及装置 |
CN115123217B (zh) * | 2022-09-02 | 2022-11-25 | 青岛慧拓智能机器有限公司 | 矿区障碍车辆行使轨迹生成方法、装置及计算机设备 |
CN115200604B (zh) * | 2022-09-16 | 2023-05-16 | 广州小鹏自动驾驶科技有限公司 | 转弯路径规划方法、设备、车辆及存储介质 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0324606A (ja) | 1989-06-22 | 1991-02-01 | Yutaka Kanayama | 移動ロボットの経路指定方法 |
JP3619753B2 (ja) * | 2000-07-03 | 2005-02-16 | トヨタ自動車株式会社 | 移動体の後方視界表示装置 |
US6854678B2 (en) * | 2001-11-20 | 2005-02-15 | Fuji Photo Film Co., Ltd. | Recording tape cartridge and drive device |
JP4665581B2 (ja) * | 2004-12-10 | 2011-04-06 | トヨタ自動車株式会社 | 方向転換支援システム |
US7706948B2 (en) * | 2007-03-02 | 2010-04-27 | Cnh America Llc | Method for creating spiral swaths for irregular field boundaries |
JP5332034B2 (ja) * | 2008-09-22 | 2013-11-06 | 株式会社小松製作所 | 無人車両の走行経路生成方法 |
KR101747820B1 (ko) * | 2011-01-13 | 2017-06-15 | 현대모비스 주식회사 | 후진 직각 주차 제어 방법 및 장치 |
FR2972364B1 (fr) * | 2011-03-08 | 2014-06-06 | Parrot | Procede de pilotage suivant un virage curviligne d'un drone a voilure tournante a rotors multiples. |
US9020757B2 (en) * | 2012-05-11 | 2015-04-28 | Trimble Navigation Limited | Path planning autopilot |
AU2013100084B4 (en) * | 2013-01-30 | 2013-09-12 | Web Industries Pty Ltd | 3-Point Home Vehicle 180º Turner |
GB201306437D0 (en) * | 2013-04-09 | 2013-05-22 | F Robotics Acquisitions Ltd | Domestic robotic system and robot therfor |
US10139826B2 (en) * | 2015-04-24 | 2018-11-27 | Autonomous Solutions Inc. | Apparatus and method for controlling a vehicle |
US10266201B2 (en) * | 2015-11-19 | 2019-04-23 | Agjunction Llc | K-turn path controller |
CN105573323A (zh) * | 2016-01-12 | 2016-05-11 | 福州华鹰重工机械有限公司 | 自动驾驶轨迹生成方法及装置 |
EP3443429B1 (en) * | 2016-04-12 | 2020-12-02 | Agjunction LLC | Line acquisition path generation using curvature profiles |
CN105857389A (zh) * | 2016-04-29 | 2016-08-17 | 百度在线网络技术(北京)有限公司 | 无人驾驶车辆的转向控制方法和装置 |
US10031525B2 (en) * | 2016-06-10 | 2018-07-24 | Cnh Industrial America Llc | Swath tracking system for an off-road vehicle |
CN106114507B (zh) * | 2016-06-21 | 2018-04-03 | 百度在线网络技术(北京)有限公司 | 用于智能车辆的局部轨迹规划方法和装置 |
-
2018
- 2018-09-28 US US16/099,891 patent/US11267471B2/en active Active
- 2018-09-28 KR KR1020197024879A patent/KR20200037738A/ko not_active IP Right Cessation
- 2018-09-28 JP JP2019546220A patent/JP6932196B2/ja active Active
- 2018-09-28 CN CN201880008833.9A patent/CN111328385B/zh active Active
- 2018-09-28 WO PCT/CN2018/108355 patent/WO2020062030A1/en unknown
- 2018-09-28 EP EP18900584.6A patent/EP3652602B1/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230140131A (ko) | 2022-03-29 | 2023-10-06 | 충북대학교 산학협력단 | 나선형 최적화 기법과 황금 분할 탐색 기법을 활용한 베지어 곡선 기반의 지역 경로 계획 방법 |
Also Published As
Publication number | Publication date |
---|---|
JP2021501921A (ja) | 2021-01-21 |
US11267471B2 (en) | 2022-03-08 |
EP3652602A1 (en) | 2020-05-20 |
CN111328385A (zh) | 2020-06-23 |
US20210221374A1 (en) | 2021-07-22 |
EP3652602B1 (en) | 2021-06-23 |
EP3652602A4 (en) | 2020-05-20 |
CN111328385B (zh) | 2023-08-15 |
JP6932196B2 (ja) | 2021-09-08 |
WO2020062030A1 (en) | 2020-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102354615B1 (ko) | 자율 주행 차량의 저속 정경을 위한 보행자 상호 작용 시스템 | |
KR102223270B1 (ko) | 여분의 초음파 radar를 구비한 자율 주행 차량 | |
KR102126621B1 (ko) | 자율 주행 차량을 위한 시스템 지연 보정 제어 방법 | |
KR101975728B1 (ko) | 자율 주행 차량을 위한 사이드슬립 보상 제어 방법 | |
JP6667686B2 (ja) | 自動運転車両のための走行軌跡生成方法、システム及び機械可読媒体 | |
JP2020009412A (ja) | 自動運転車両のための計画運転感知システム | |
JP2018077827A (ja) | 自律走行車の決定の評価フレームワーク | |
KR20180050383A (ko) | 자율 주행 차량 이동을 시뮬레이트하기 위한 물리 모델 및 머신 러닝과 결합된 방법 | |
KR20200037737A (ko) | 자율 주행 차량을 위한 보행자 확률 예측 시스템 | |
US11180160B2 (en) | Spiral curve based vertical parking planner system for autonomous driving vehicles | |
US11048252B2 (en) | Optimal path generation for static obstacle avoidance | |
JP2020061125A (ja) | 自動運転のための交差検証に基づく自動lidarキャリブレーション | |
KR20200037738A (ko) | 자율 주행 차량을 위한 나선형 경로 기반의 삼중 포인트 회전 계획 | |
KR20180051571A (ko) | 자율 주행 차량을 위한 차량 위치점 전달 방법 | |
KR20200038201A (ko) | 자율 주행 차량을 위한 제어 지배적 삼중 포인트 회전 계획 | |
JP2020083306A (ja) | 自動運転車両を動作させるための所定のキャリブレーションテーブルに基づく車両制御システム | |
CN111649751B (zh) | 一种用于参考线平滑的超自由缝合方法 | |
KR102223347B1 (ko) | 에뮬레이션 기반의 자율 주행 차량의 3점 방향 전환 계획 | |
US20210191411A1 (en) | Method and system for generating reference lines for autonomous driving vehicles | |
CN111801638B (zh) | 基于枚举的自动驾驶车辆的三点转弯规划 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AMND | Amendment | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
X601 | Decision of rejection after re-examination |