KR102476681B1 - 운송수단 충돌 회피 - Google Patents

운송수단 충돌 회피 Download PDF

Info

Publication number
KR102476681B1
KR102476681B1 KR1020197013588A KR20197013588A KR102476681B1 KR 102476681 B1 KR102476681 B1 KR 102476681B1 KR 1020197013588 A KR1020197013588 A KR 1020197013588A KR 20197013588 A KR20197013588 A KR 20197013588A KR 102476681 B1 KR102476681 B1 KR 102476681B1
Authority
KR
South Korea
Prior art keywords
vehicle
speed
processor
points
navigation command
Prior art date
Application number
KR1020197013588A
Other languages
English (en)
Other versions
KR20190076985A (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 KR20190076985A publication Critical patent/KR20190076985A/ko
Application granted granted Critical
Publication of KR102476681B1 publication Critical patent/KR102476681B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/10Simultaneous control of position or course in three dimensions
    • G05D1/101Simultaneous control of position or course in three dimensions specially adapted for aircraft
    • G05D1/106Change initiated in response to external conditions, e.g. avoidance of elevated terrain or of no-fly zones
    • 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/10Simultaneous control of position or course in three dimensions
    • G05D1/101Simultaneous control of position or course in three dimensions specially adapted for aircraft
    • 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
    • G05D1/0223Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0257Control of position or course in two dimensions specially adapted to land vehicles using a radar
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/10Simultaneous control of position or course in three dimensions
    • G05D1/101Simultaneous control of position or course in three dimensions specially adapted for aircraft
    • G05D1/102Simultaneous control of position or course in three dimensions specially adapted for aircraft specially adapted for vertical take-off of aircraft
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • G06V20/17Terrestrial scenes taken from planes or by drones
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • G06V20/176Urban or other man-made structures
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G5/00Traffic control systems for aircraft, e.g. air-traffic control [ATC]
    • G08G5/0004Transmission of traffic-related information to or from an aircraft
    • G08G5/0013Transmission of traffic-related information to or from an aircraft with a ground station
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G5/00Traffic control systems for aircraft, e.g. air-traffic control [ATC]
    • G08G5/0047Navigation or guidance aids for a single aircraft
    • G08G5/0069Navigation or guidance aids for a single aircraft specially adapted for an unmanned aircraft
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G5/00Traffic control systems for aircraft, e.g. air-traffic control [ATC]
    • G08G5/0073Surveillance aids
    • G08G5/0086Surveillance aids for monitoring terrain
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G5/00Traffic control systems for aircraft, e.g. air-traffic control [ATC]
    • G08G5/04Anti-collision systems
    • G08G5/045Navigation or guidance aids, e.g. determination of anti-collision manoeuvers
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/88Radar or analogous systems specially adapted for specific applications
    • G01S13/93Radar or analogous systems specially adapted for specific applications for anti-collision purposes
    • G01S13/933Radar or analogous systems specially adapted for specific applications for anti-collision purposes of aircraft or spacecraft
    • G01S13/935Radar or analogous systems specially adapted for specific applications for anti-collision purposes of aircraft or spacecraft for terrain-avoidance

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Game Theory and Decision Science (AREA)
  • Medical Informatics (AREA)
  • Business, Economics & Management (AREA)
  • Electromagnetism (AREA)
  • Traffic Control Systems (AREA)
  • Navigation (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Electric Propulsion And Braking For Vehicles (AREA)

Abstract

실시예들은 운송수단 충돌 회피를 위한 디바이스들 및 방법들을 포함한다. 운송수단의 프로세서는 하나 이상의 포인트들을 포함하는 센서 데이터를 수신할 수 있다. 프로세서는 운송수단으로부터 하나 이상의 포인트들까지의 거리 및 방향을 결정할 수 있다. 프로세서는 운송수단으로부터 하나 이상의 포인트들까지 결정된 거리 및 방향에 기초하여 하나 이상의 포인트들 각각에 대한 속도 제약을 결정할 수 있다. 내비게이션 명령에 기초하여, 프로세서는 하나 이상의 속도 제약들을 충족하는 하나 이상의 속도 솔루션들을 결정할 수 있다. 프로세서는 내비게이션 명령에 기초하여 결정된 하나 이상의 속도 솔루션들로부터 속도 솔루션을 선택할 수 있고, 선택된 속도 솔루션에 기초하여 운송수단 속도를 조절할 수 있다.

Description

운송수단 충돌 회피
[0001] 본 출원은 2016년 11월 14일에 출원되고 발명의 명칭이 "Vehicle Collision Avoidance"인 미국 가특허 출원 제62/421,551호에 대한 우선권 이익을 주장하며, 상기 출원의 전체 내용은 이로써 그 전체가 인용에 의해 통합된다.
[0002] 이동중인 운송수단들, 및 특히 반-자율 및 로봇 운송수단들은 결국 장애물 회피의 난제들에 직면한다. 유인 운송수단들은 장애물들을 감지하기 위해 인간 조작자에 의존하고 충돌을 회피하기 위해 실시간 내비게이션 판정들을 행할 수 있지만, 원격 제어 운송수단들 및 반-자율 운송수단들은 장애물 회피의 자동화된 기술들에 의존해야 한다.
[0003] 다양한 실시예들은 물체와의 충돌을 회피하기 위해 운송수단의 프로세서에 의해 구현될 수 있는 방법들을 포함한다. 다양한 실시예들은 하나 이상의 포인트들을 포함하는 센서 데이터를 수신하는 단계, 운송수단으로부터 하나 이상의 포인트들까지의 거리 및 방향을 결정하는 단계, 운송수단으로부터 하나 이상의 포인트들 각각까지 결정된 거리 및 방향에 기초하여 하나 이상의 포인트들 각각에 대한 속도 제약을 결정하는 단계, 운송수단 내비게이션 명령에 기초하여 결정된 속도 제약들을 충족하는 하나 이상의 속도 솔루션들을 결정하는 단계, 운송수단 내비게이션 명령에 기초하여 결정된 하나 이상의 속도 솔루션들로부터 속도 솔루션을 선택하는 단계, 및 선택된 속도 솔루션에 기초하여 운송수단 속도를 조절하는 단계를 포함할 수 있다. 일부 실시예들에서, 센서 데이터를 수신하는 단계는 프로세싱되지 않은 센서 데이터를 수신하는 단계를 포함할 수 있다. 일부 실시예들에서, 하나 이상의 포인트들 각각에 대한 속도 제약은 속도 부등식 제약을 포함할 수 있다.
[0004] 일부 실시예들에서, 운송수단으로부터 하나 이상의 포인트들까지의 거리 및 방향을 결정하는 단계는 운송수단으로부터 장애물까지의 거리 및 방향을 결정하는 단계를 포함할 수 있다. 일부 실시예들에서, 장애물은 하나 이상의 포인트들에 의해 표현되는 장애물을 포함할 수 있다.
[0005] 일부 실시예들에서, 운송수단으로부터 하나 이상의 포인트들 각각까지 결정된 거리 및 방향에 기초하여 하나 이상의 포인트들 각각에 대한 속도 제약을 결정하는 단계는 운송수단으로부터 하나 이상의 포인트들에 의해 표현되는 장애물까지 결정된 거리 및 방향에 기초하여 하나 이상의 포인트들 각각에 대한 속도 제약을 결정하는 단계를 포함할 수 있다.
[0006] 일부 실시예들에서, 운송수단 내비게이션 명령은 방향 컴포넌트를 포함할 수 있고, 운송수단 내비게이션 명령에 기초하여 결정된 하나 이상의 속도 솔루션들로부터 속도 솔루션을 선택하는 단계는 운송수단 내비게이션 명령의 방향 컴포넌트에 가장 근접하게 매칭하는 방향 컴포넌트를 갖는 속도 솔루션을 선택하는 단계를 포함할 수 있다. 일부 실시예들에서, 운송수단 내비게이션 명령은 속력 컴포넌트를 포함할 수 있고, 운송수단 내비게이션 명령에 기초하여 결정된 하나 이상의 속도 솔루션들로부터 속도 솔루션을 선택하는 단계는 내비게이션 명령의 속력 컴포넌트에 가장 근접하게 매칭하는 속력 컴포넌트를 갖는 속도 솔루션을 선택하는 단계를 포함할 수 있다.
[0007] 추가적인 실시예들은 앞서 요약된 방법들에 동작들을 수행하기 위한 프로세서 실행가능 명령들로 구성된 프로세서를 포함하는 운송수단을 포함할 수 있다. 추가적인 실시예들은 앞서 요약된 방법들의 기능들을 수행하기 위한 수단을 포함하는 운송수단을 포함할 수 있다. 추가적인 실시예들은 프로세서 판독가능 저장 매체들을 포함할 수 있고, 운송수단의 프로세서로 하여금 앞서 요약된 방법들의 동작들을 수행하게 하도록 구성된 프로세서 실행가능 명령들이 그 매체들 상에 저장된다.
[0008] 본원에 통합되고 본 명세서의 일부를 구성하는 첨부된 도면들은 예시적인 실시예들을 예시하고, 앞서 주어진 일반적인 설명 및 아래에서 주어지는 상세한 설명과 함께 다양한 실시예들을 설명하도록 기능한다.
[0009] 도 1은 다양한 실시예들에 따른 통신 시스템 내에서 동작하는 운송수단의 시스템 블록도이다.
[0010] 도 2는 다양한 실시예들에 따른 운송수단의 컴포넌트들을 예시하는 컴포넌트 블록도이다.
[0011] 도 3은 다양한 실시예들에 따른 운송수단의 본체 좌표계를 예시한다.
[0012] 도 4a는 다양한 실시예들에 따른 운송수단 충돌 회피 방법을 예시한다.
[0013] 도 4b는 다양한 실시예들에 따른 운송수단 충돌 회피 방법을 예시한다.
[0014] 도 5는 다양한 실시예들에 따른 운송수단 충돌 회피 방법을 예시한다.
[0015] 도 6은 다양한 실시예들에 따른 운송수단 충돌 회피 방법을 예시하는 프로세스 흐름도이다.
[0016] 도 7은 다양한 실시예들에 따른 운송수단 충돌 회피 방법을 예시하는 프로세스 흐름도이다.
[0017] 다양한 실시예들은 첨부된 도면들을 참조하여 상세히 설명될 것이다. 가능한 경우에는 어디에서든, 동일한 참조 부호들은 도면들 전반에 걸쳐 동일하거나 유사한 부분들을 지칭하기 위해 사용될 것이다. 특정 예들 및 실시예들에 대해 행해진 참조들은 예시의 목적들을 위한 것이고, 청구항들의 범위를 제한하는 것으로 의도되지 않는다.
[0018] 다양한 실시예들은, 운송수단의 프로세서에 의해 구현될 수 있고 운송수단이 장애물과의 충돌을 회피할 수 있게 함으로써 운송수단의 동작을 개선할 수 있는 방법들을 포함한다. 일부 실시예들에서, 프로세서는 하나 이상의 포인트들을 포함하는 센서 데이터를 수신할 수 있고, 프로세서는 운송수단으로부터 하나 이상의 포인트들까지의 거리 및 방향을 결정할 수 있다. 일부 실시예들에서, 프로세서는 운송수단으로부터 하나 이상의 포인트들까지의 거리 및 방향을 결정할 수 있고, 하나 이상의 포인트들 각각까지의 결정된 거리 및 방향에 기초하여 하나 이상의 포인트들 각각에 대한 속도 제약을 결정할 수 있다. 일부 실시예들에서, 프로세서는 운송수단으로부터, 하나 이상의 포인트들에 의해 표현될 수 있는 장애물까지의 거리 및 방향을 결정할 수 있고, 장애물에 대한 속도 제약을 결정할 수 있다. 일부 실시예들에서, 프로세서는 하나 이상의 포인트들 각각에 대한 속도 제약을 결정할 수 있다. 프로세서는 입력 속도를 포함할 수 있는 내비게이션 입력을 수신 또는 포착할 수 있고, 속도 제약들 모두를 충족하는 속도 솔루션을 결정하기 위해 입력 속도 및 하나 이상의 속도 제약들을 사용할 수 있다. 다양한 실시예들은 또한 내비게이션 명령에 근접하게 매칭하도록 운송수단 속도를 조절함으로써 운송수단의 동작을 개선할 수 있다. 다양한 실시예들은 또한 포인트들의 그룹(포인트들의 매우 큰 그룹을 포함할 수 있음)으로부터 하나 이상의 포인트들을 식별함으로써 운송수단의 프로세서에 대한 계산 부담을 감소시키고, 하나 이상의 식별된 포인트들 각각에 대한 속도 제약을 결정하여, 운송수단의 동작을 개선할 수 있다. 다양한 실시예들에서, 프로세서는 운송수단 속도에 대해 한정들을 가하는 속도 제약들을 사용할 수 있다.
[0019] 본원에서 사용되는 바와 같이, "운송수단"이라는 용어는 다양한 타입들의 로봇 운송수단들 및 반-자율 운송수단들 중 하나를 지칭한다. 운송수단은 일부 원격 동작 명령 또는 탑재된 컴퓨팅 디바이스의 메모리에 저장된 명령들에 대한 업데이트들로 운송수단을 조작 및/또는 내비게이팅하도록 구성된 탑재된 컴퓨팅 디바이스를 포함할 수 있다. 일부 구현들에서, 운송수단은 운송수단에 대한 추진력 및/또는 리프팅 힘들을 제공하는, 하나 이상의 회전날개들을 각각 포함하는 복수의 추진 유닛들을 사용하여 비행을 위해 추진되는 비행 운송수단일 수 있다. 일부 구현들에서, 운송수단은 지상-기반 운송수단, 수상 운송수단 또는 수중 운송수단일 수 있다. 운송수단 추진 유닛들은 하나 이상의 타입들의 전력 소스들, 예를 들어, 배터리들, 연료 셀들, 모터-생성기들, 태양 전지들, 또는 탑재된 컴퓨팅 디바이스, 내비게이션 컴포넌트들 및/또는 다른 탑재된 컴포넌트들에 전력을 또한 공급할 수 있는 다른 전력 소스들에 의해 전력 공급될 수 있다.
[0020] 이동중인 운송수단들, 및 특히 반-자율 및 로봇 운송수단들은 결국 장애물 회피의 난제들에 직면한다. 유인 운송수단들은 장애물들을 감지하기 위해 인간 조작자에 의존하고 충돌을 회피하기 위해 실시간 내비게이션 판정들을 행할 수 있지만, 원격 제어 운송수단들 및 반-자율 운송수단들은 장애물 회피의 자동화된 기술들에 의존해야 한다.
[0021] 다양한 실시예들은 물체와의 충돌을 회피하기 위해 운송수단의 프로세서에 의해 구현되는 방법들을 제공한다. 다양한 실시예들에서, 운송수단의 프로세서는 예를 들어, 운송수단의 센서에 의해 수신된 정보로부터 장애물을 검출할 수 있다. 프로세서는 운송수단과 장애물 사이의 거리 및 장애물에 대한 각도를 결정할 수 있고, 장애물에 대한 속도 제약을 결정할 수 있다. 프로세서는 입력 속도를 포함할 수 있는 내비게이션 명령을 수신하거나 포착할 수 있다. 프로세서는 속도 제약을 충족하는 입력 속도에 기초하여 하나 이상의 속도 솔루션들을 결정할 수 있다. 프로세서는 내비게이션 명령에 기초하여 속도 솔루션을 선택할 수 있고, 프로세서는 선택된 속도 솔루션에 기초하여 운송수단 속도를 조절할 수 있다. 일부 실시예들에서, 속도 제약은 장애물과 충돌 없이 운송수단이 달성할 수 있는 최대 속도를 포함할 수 있다.
[0022] 다양한 실시예들은 다양한 통신 시스템들(100) 내에서 동작하는 운송수단 내에서 구현될 수 있고, 그 예는 도 1에 예시되어 있다. 도 1을 참조하면, 통신 시스템(100)은 운송수단(102), 운송수단 제어기(130), 기지국(104), 액세스 포인트(106), 통신 네트워크(108) 및 네트워크 엘리먼트(110)를 포함할 수 있다.
[0023] 기지국(104) 및 액세스 포인트(106)는 유선 및/또는 무선 통신 백홀(118 및 120)을 통해 각각 통신 네트워크(108)에 액세스하기 위한 무선 통신들을 제공할 수 있다. 기지국(104)은 넓은 영역에 걸쳐 무선 통신들을 제공하도록 구성된 기지국들(예를 들어, 매크로 셀들) 뿐만 아니라, 마이크로 셀, 펨토 셀, 피코 셀 및 다른 유사한 네트워크 액세스 포인트들을 포함할 수 있는 소형 셀들을 포함할 수 있다. 액세스 포인트(106)는 비교적 더 작은 영역에 걸쳐 무선 통신들을 제공하도록 구성된 액세스 포인트들을 포함할 수 있다. 기지국들 및 액세스 포인트들의 다른 예들이 또한 가능하다.
[0024] 운송수단(102)은 무선 통신 링크(116)를 통해 운송수단 제어기(130)와 통신할 수 있다. 운송수단 제어기(130)는 비행 및/또는 내비게이션 명령들을 운송수단(102)에 제공할 수 있다. 운송수단(102)은 또한 무선 통신 링크(112)를 통해 기지국(104)과 그리고 무선 통신 링크(114)를 통해 액세스 포인트(106)와 통신할 수 있다. 무선 통신 링크들(112 및 114)은 복수의 캐리어 신호들, 주파수들 또는 주파수 대역들을 포함할 수 있고, 이들 각각은 복수의 로직 채널들을 포함할 수 있다. 무선 통신 링크들(112 및 114)은 하나 이상의 RAT(radio access technology)들을 활용할 수 있다. 무선 통신 링크에서 사용될 수 있는 RAT들의 예들은 3GPP LTE(Long Term Evolution), 3G, 4G, 5G, GSM(Global System for Mobility), CDMA(Code Division Multiple Access), WCDMA(Wideband Code Division Multiple Access), WiMAX(Worldwide Interoperability for Microwave Access), TDMA(Time Division Multiple Access), 및 다른 모바일 텔레포니 통신 기술 셀룰러 RAT들을 포함한다. 통신 시스템(100) 내의 다양한 무선 통신 링크들 중 하나 이상에서 사용될 수 있는 RAT들의 추가적인 예들은 매체 레인지 프로토콜들, 예를 들어, Wi-Fi, LTE-U, LTE-다이렉트, LAA, MuLTEfire, 및 비교적 단거리 RAT들, 예를 들어, ZigBee®, Bluetooth®, 및 블루투스 LE(Low Energy) ®를 포함한다.
[0025] 네트워크 엘리먼트(110)는 네트워크 서버 또는 다른 유사한 네트워크 엘리먼트를 포함할 수 있다. 네트워크 엘리먼트(110)는 통신 링크(122)를 통해 통신 네트워크(108)와 통신할 수 있다. 운송수단(102) 및 네트워크 엘리먼트(110)는 통신 네트워크(108)를 통해 통신할 수 있다. 네트워크 엘리먼트(110)는 다양한 정보, 예를 들어, 내비게이션 정보, 날씨 정보, 로컬 공중, 지상 및/또는 해상 트래픽에 대한 정보, 움직임 제어 명령들, 및 운송수단(102)의 동작들에 관한 다른 정보, 명령들, 또는 커맨드들을 운송수단(102)에 제공할 수 있다.
[0026] 다양한 실시예들에서, 운송수단(102)은 환경을 통해 모션(150)의 경로 상에서 이동할 수 있다. 운송수단(102)이 환경을 통해 이동함에 따라, 운송수단은 장애물(140) 또는 장애물(142)과 같은 장애물을 검출할 수 있다. 장애물들은 운송수단(102)에 대한 충돌 위험을 제기할 수 있다. 장애물(142)과 같은 일부 장애물들은 비교적 더 작고, 회피하거나 그 주위로 내비게이팅하는 것이 가능할 수 있다. 장애물(140)과 같은 일부 장애물들은, 벽 또는 유사한 장벽과 같이, 회피하거나 그 주위로 내비게이팅하는 것이 가능하지 않은 장애물들을 포함할 수 있다.
[0027] 운송수단들은 다양한 설계들을 포함할 수 있다. 도 2는 다양한 실시예들을 활용할 수 있는 예시적인 운송수단(200)을 예시한다. 비행 설계를 갖는 운송수단(200)이 예시되지만, 이러한 예시는, 다양한 실시예들이 회전날개 운송수단들 또는 비행 운송수단들로 제한되는 것을 의미하거나 요구하도록 의도되지 않는다. 다양한 실시예들은 날개를 갖는 운송수단들 뿐만 아니라 지상 운송수단들, 모터 운송수단들 및 수중 운송수단들과 함께 사용될 수 있다. 다른 설계들의 운송수단들은 비행 운송수단(200)에 대해 아래에서 설명되는 엘리먼트들과 유사한 엘리먼트들을 포함할 수 있고, 특정 운송수단 설계에 적절한 대로 다른 엘리먼트들을 또한 포함할 수 있음이 또한 인식될 것이다.
[0028] 도 1 및 도 2를 참조하면, 운송수단(200)은 운송수단(102)과 유사할 수 있다. 운송수단(200)은 이륙(또는 착륙) 뿐만 아니라 다른 비행 움직임들(예를 들어, 전방 진행, 상승, 하강, 측방향 움직임들, 기울이기, 회전 등)을 제공하기 위해 대응하는 모터들에 의해 구동되는 하나 이상의 회전날개들(202)을 활용한다. 운송수단(200)은 다수의 회전날개들(202), 프레임(204) 및 착륙 기둥들(206) 또는 스키드(skid)들을 포함할 수 있다. 프레임(204)은 회전날개들(202)과 연관된 모터들에 대한 구조적 지지를 제공할 수 있다. 착륙 기둥들(206)은 운송수단(200)의 컴포넌트들의 조합에 대한 최대 부하 하중 및 일부 경우들에서는 적재 화물을 지지할 수 있다. 설명 및 예시의 용이함을 위해, 배선, 프레임 구조 상호연결부들 또는 당업자에게 공지될 다른 특징들과 같은 운송수단(200)의 일부 상세한 양상들은 생략될 수 있다. 예를 들어, 운송수단(200)은 다수의 지지 부재들 또는 프레임 구조들을 갖는 프레임(204)을 갖는 것으로 도시되고 설명되지만, 운송수단(200)은 몰딩된 구조를 통해 지지가 획득되는 몰딩된 프레임을 사용하여 구성될 수 있다. 예시된 운송수단(200)은 4개의 회전날개들(202)을 갖지만, 이는 단지 예시적이고 다양한 실시예들은 4개보다 더 많거나 더 적은 회전날개들(202)을 포함할 수 있다.
[0029] 운송수단(200)은, 운송수단(200)에 전력 공급하고 이의 동작을 제어하기 위해 사용되는 다양한 회로들 및 디바이스들을 수납할 수 있는 제어 유닛(210)을 더 포함할 수 있다. 제어 유닛(210)은 프로세서(220), 전력 모듈(230), 센서들(240), 적재 화물-고정 유닛들(244), 출력 모듈(250), 입력 모듈(260) 및 라디오 모듈(270)을 포함할 수 있다.
[0030] 프로세서(220)는 다양한 실시예들의 동작들을 포함하는 운송수단(200)의 이동 및 다른 동작들을 제어하기 위한 프로세서-실행가능 명령들로 구성될 수 있다. 프로세서(220)는 내비게이션 유닛(222), 메모리(224), 자이로/가속도계 유닛(226) 및 항공공학 모듈(228)을 포함하거나 그에 커플링될 수 있다. 프로세서(220) 및/또는 내비게이션 유닛(222)은 내비게이션에 유용한 데이터를 수신하고, 실시간 포지션 보고들을 제공하고, 데이터를 평가하기 위해 무선 접속(예를 들어, 셀룰러 데이터 네트워크)을 통해 서버와 통신하도록 구성될 수 있다.
[0031] 항공공학 모듈(228)은 프로세서(220) 및/또는 내비게이션 유닛(222)에 커플링될 수 있고, 이동 제어-관련 정보, 예를 들어, 고도, 자세, 대기 속도, 방향, 및 내비게이션 유닛(222)이 내비게이션 목적들로 사용할 수 있는 유사한 정보, 예를 들어, GNSS(Global Navigation Satellite System) 포지션 업데이트들 사이의 데드 레코닝을 제공하도록 구성될 수 있다.
[0032] 자이로/가속도계 유닛(226)은 가속도계, 자이로스코프, 관성 센서 또는 다른 유사한 센서들을 포함할 수 있다. 항공공학 모듈(228)은 내비게이션 및 포지셔닝 결정들에서 사용될 수 있는 운송수단(200)의 배향 및 가속도들에 관한 데이터를 제공하는 자이로/가속도계 유닛(226)으로부터 데이터를 포함하거나 수신할 수 있다.
[0033] 프로세서(220)는 (예를 들어, 가시광, 적외선, 자외선 및/또는 광의 다른 파장들을 감지할 수 있는) 이미지 센서 또는 광학 센서와 같은 센서들(240)로부터 추가적인 정보를 추가로 수신할 수 있다. 센서들(240)은 또한 RF(radio frequency) 센서, 기압계, 소나(sonar) 방출기/검출기, 레이더 방출기/검출기, 마이크로폰 또는 다른 음향 센서, 또는 움직임 동작들 뿐만 아니라 내비게이션 및 포지셔닝 결정들 및 계산들을 위해 프로세서(220)에 의해 사용가능한 정보를 제공할 수 있는 다른 센서를 포함할 수 있다. 센서들(240)은, 운송수단(200)이 표면과 접촉한 때를 표시하는 신호를 제공할 수 있는 접촉 또는 압력 센서들을 포함할 수 있다. 적재 화물-고정 유닛들(244)은 그립 및 해제 메커니즘을 구동하는 액추에이터 모터, 및 제어 유닛(210)으로부터의 커맨드들에 대한 응답으로 적재 화물을 그립 및 해제하기 위해 제어 유닛(210)에 대해 응답하는 관련 제어들을 포함할 수 있다. 다양한 실시예들에서, 제어 유닛(210)은 다양한 애플리케이션들에 사용될 수 있는 입력 모듈(260)을 구비할 수 있다. 예를 들어, 입력 모듈(260)은 탑재된 카메라 또는 센서로부터 이미지들 또는 데이터를 수신할 수 있거나 또는 다른 컴포넌트들(예를 들어, 적재 화물)로부터 전자 신호들을 수신할 수 있다.
[0034] 일부 실시예들에서, 내비게이션 유닛(222)은 비행 제어기 모듈(222a) 및 경로 플래너 모듈(222b)과 같은 다양한 상이한 기능들을 수행하기 위한 모듈들을 포함할 수 있다. 비행 제어기 모듈(222a)은 계산들을 수행할 수 있고, 운송수단 움직임들의 순간 순간의 제어와 관련된 명령들을 운송수단(200) 상의 다양한 모터 제어기들 및/또는 액추에이터들에 전송할 수 있다. 비행 제어기 모듈(222a)은 자이로/가속도계 유닛(226), 항공공학 모듈(228) 및 센서들(240) 중 하나 이상으로부터의 정보를 사용할 수 있다. 경로 플래너 모듈(222b)은 (운송수단(200)의 움직임들의 순간 순간의 제어와 반대로) 글로벌 경로 플래닝과 관련 계산들 및 결정들을 수행할 수 있고, 비행 제어기 모듈(222a)에 경로 정보를 전송할 수 있다.
[0035] 전력 모듈(230)은 프로세서(220), 센서들(240), 적재 화물-고정 유닛들(244), 출력 모듈(250), 입력 모듈(260) 및 라디오 모듈(270)을 포함하는 다양한 컴포넌트들에 전력을 제공할 수 있는 하나 이상의 배터리들을 포함할 수 있다. 또한, 전력 모듈(230)은 재충전가능한 배터리들과 같은 에너지 저장 컴포넌트들을 포함할 수 있다. 프로세서(220)는 예를 들어, 충전 제어 회로를 사용하여 충전 제어 알고리즘을 실행함으로써, 전력 모듈(230)의 충전(즉, 하베스트된 에너지의 저장)을 제어하기 위한 프로세서 실행가능 명령들로 구성될 수 있다. 대안적으로 또는 추가적으로, 전력 모듈(230)은 자기 자신의 충전을 관리하도록 구성될 수 있다. 프로세서(220)는 회전날개들(202) 및 다른 컴포넌트들을 구동하는 모터들을 관리하기 위한 제어 신호들을 출력할 수 있는 출력 모듈(250)에 커플링될 수 있다.
[0036] 운송수단(200)이 목적지를 향해 진행함에 따라, 운송수단(200)은 회전날개들(202)의 개별적인 모터들의 제어를 통해 제어될 수 있다. 프로세서(220)는, 내비게이션 유닛(222)으로부터 데이터를 수신하고, 운송수단(200)의 현재 포지션 및 배향 뿐만 아니라 목적지 또는 중간적 사이트들을 향한 적절한 코스를 결정하기 위해 이러한 데이터를 사용할 수 있다. 다양한 실시예들에서, 내비게이션 유닛(222)은 운송수단(200)이 GNSS 신호들을 사용하여 내비게이팅할 수 있게 하는 GNSS 수신기 시스템(예를 들어, 하나 이상의 GPS(global positioning system) 수신기들)을 포함할 수 있다. 일부 실시예들에서, 내비게이션 유닛(222)은 이미지-기반 시스템들, 예를 들어, 시각적-관성 오도메트리로부터 유도된 포지션을 수신 또는 결정할 수 있다. 대안적으로 또는 추가적으로, 내비게이션 유닛(222)은 내비게이션 비콘들 또는 라디오 노드들로부터의 다른 신호들, 예를 들어, 내비게이션 비콘들(예를 들어, VOR(VHF(very high frequency) omni-directional range) 비콘들)을 수신하기 위한 라디오 내비게이션 수신기들, Wi-Fi 액세스 포인트들, 셀룰러 네트워크 사이트들, 라디오 스테이션, 원격 컴퓨팅 디바이스들, 다른 UAV들 등을 구비할 수 있다.
[0037] 라디오 모듈(270)은 내비게이션 신호들, 예를 들어, 항공공학 내비게이션 설비들 등으로부터의 신호들을 수신하고, 이러한 신호들을 프로세서(220) 및/또는 내비게이션 유닛(222)에 제공하여 운송수단 내비게이션을 보조하도록 구성될 수 있다. 다양한 실시예들에서, 내비게이션 유닛(222)은 지상의 인식가능한 RF 방출기들(예를 들어, AM/FM 라디오 스테이션들, Wi-Fi 액세스 포인트들, 및 셀룰러 네트워크 기지국들)로부터 수신된 신호들을 사용할 수 있다.
[0038] 라디오 모듈(270)은 모뎀(274) 및 송신/수신 안테나(272)를 포함할 수 있다. 라디오 모듈(270)은 운송수단 제어기(290) 뿐만 아니라 무선 텔레포니 기지국 또는 셀 타워(예를 들어, 기지국(104)), 네트워크 액세스 포인트(예를 들어, 액세스 포인트(106)), 비콘, 스마트폰, 태블릿, 또는 운송수단(200)이 통신할 수 있는 다른 컴퓨팅 디바이스(예를 들어, 네트워크 엘리먼트(110))와 무선 통신들을 수행하도록 구성될 수 있다. 프로세서(220)는 라디오 모듈(270)의 모뎀(274) 및 안테나(272)와 송신/수신 안테나(292)를 통한 무선 통신 디바이스(290)를 통해 양방향 무선 통신 링크(294)를 확립할 수 있다. 일부 실시예들에서, 라디오 모듈(270)은 상이한 라디오 액세스 기술들을 사용하여 상이한 무선 통신 디바이스들과 다수의 접속들을 지원하도록 구성될 수 있다.
[0039] 제어 유닛(210)의 다양한 컴포넌트들은 별개의 컴포넌트들로서 예시되어 있지만, 컴포넌트들(예를 들어, 프로세서(220), 출력 모듈(250), 라디오 모듈(270) 및 다른 유닛들) 중 일부 또는 전부는 시스템-온-칩 모듈과 같은 단일 디바이스 또는 모듈에서 함께 통합될 수 있다.
[0040] 일부 실시예들에서, 로봇 또는 반자율 운송수단은 자신의 환경을 감지하고 그리고 또는 프레임 또는 본체 좌표계에 기초하여 특정 내비게이션 및/또는 비행 판정들을 행할 수 있다. 도 3은 3-축 본체 프레임 좌표계(300)의 예를 예시한다. 도 1 내지 도 3을 참조하면, 일부 실시예들에서, 운송수단의 프로세서(예를 들어, 프로세서(220))는 본체 프레임 좌표계에 대해 운송수단으로부터 장애물(또는 아래에서 추가로 설명되는 바와 같은 포인트)가지의 방향 및 거리를 결정할 수 있다. 일부 실시예들에서, 본체 프레임 좌표계(300)는 세계 프레임, 본체 프레임, 중력-정렬된 본체 프레임 등을 포함하는 다양한 프레임들을 사용할 수 있다. 다양한 실시예들에서, 운송수단의 프로세서(예를 들어, 프로세서(220))는 X 축, Y 축 및 Z 축 각각에 대한 위치들을 나타낼 수 있다. 프로세서는 상대적 방향들(예를 들어, X 축에서 전방 및 후방 방향들, Y 축에서 좌측 및 우측, 및 Z 축에서 위 및 아래)을 각각의 축과 연관시킬 수 있다.
[0041] 도 4a는 다양한 실시예들에 따른 운송수단 충돌 회피(400) 방법을 예시한다. 도 1 내지 도 4a를 참조하면, 운송수단(402)(운송수단(102 및 200)과 유사할 수 있음)의 프로세서(예를 들어, 프로세서(220))는 운송수단의 센서(예를 들어, 센서들(240) 중 하나 이상)를 사용하여 장애물들(140 및 142)과 같은 장애물들을 검출할 수 있다. 일부 구현들에서, 센서는 운송수단(402)의 프로세서가 운송수단(402)으로부터 장애물(예를 들어, 장애물들(140 및 142))까지의 거리 및 방향(예를 들어, 각도)을 결정할 수 있게 하는 데이터를 획득 또는 수신할 수 있다. 예를 들어, 센서는, 프로세서가 운송수단(402)으로부터 장애물들(140 및 142)까지의 거리 및 방향을 결정하기 위해 사용할 수 있는 DFS(depth-from-stereo) 정보를 운송수단(402)의 프로세서가 획득할 수 있게 할 수 있는 양안 센서, 예를 들어, 양안 카메라를 포함할 수 있다. 다른 예로서, 센서는 장애물들(140 및 142)까지의 거리 및 방향을 결정하기 위한 정보를 프로세서에 제공할 수 있는 레이더, 리다(lidar), 소나 또는 다른 센서 중 하나 이상을 포함할 수 있다.
[0042] 검출된 장애물의 크기, 형상 및 다른 특성들을 결정하는 것과 같이 장애물을 특성화하는 것은 계산 집약적일 수 있다. 프로세서 상의 계산 부담을 감소시키기 위해, 일부 실시예들에서, 프로세서는 장애물(140) 상에 예시된 포인트들(404(1-n)) 및 장애물(142) 상에 예시된 포인트들(406(1-n))과 같은 하나 이상의 포인트들을 식별할 수 있다. 하나 이상의 포인트들(예를 들어, 404(1-n) 및 406(1-n)) 각각은 포인트의 위치에서 장애물의 존재를 표시할 수 있고 그리고/또는 자체로 장애물 전체일 수 있다. 일부 실시예들에서, 하나 이상의 포인트들 각각은 장애물을 표현할 수 있다. 일부 실시예들에서, 프로세서는 어떠한 포인트들도 식별하지 않을 수 있거나 식별하지 못할 수 있고, 이는 어떠한 장애물도 검출되지 않음을 표시할 수 있다.
[0043] 일부 실시예들에서, 프로세서는 하나 이상의 포인트들, 예를 들어, 포인트들(404a, 404b, 404c…404(n)) 및 포인트들(406a, 406b…406(n))을 식별할 수 있다. 일부 구현들에서, 포인트는 장애물(예를 들어, 장애물들(140 및 142)) 상의 또는 그 근처의 포인트일 수 있지만, 이것이 요구되는 것은 아니다. 일부 실시예들에서, 프로세서는 예를 들어, 운송수단(402)의 센서의 시야로부터 하나 이상의 포인트들을 식별할 수 있다. 예를 들어, 프로세서는 카메라를 사용하여 이미지를 수신할 수 있고, 이미지에서 하나 이상의 포인트들을 식별할 수 있다. 일부 구현들에서, 포인트는 이미지의 픽셀에 대응할 수 있다. 일부 구현들에서, 프로세서는 이미지의 각각의 픽셀에 대한 하나의 포인트와 같은 매우 많은 수의 포인트들을 식별할 수 있다. 일부 실시예들에서, 프로세서는 더 적은 포인트들을 식별함으로써 프로세싱 부담을 감소시킬 수 있다. 일부 실시예들에서, 프로세서는 이미지의 분해능을 감소시켜, 포인트들을 식별할 픽셀들의 수를 감소시킴으로써 프로세싱 부담을 감소시킬 수 있다.
[0044] 다양한 실시예들에서, 프로세서는 프로세싱되지 않은 센서 데이터("미처리 센서 데이터"), 예를 들어, 카메라로부터의 프로세싱되지 않은 이미지 데이터를 수신할 수 있고, 센서 데이터에 표현된 물체를 인식 또는 식별하기 위해 수신된 미처리 센서 데이터에 대한 추가적인 프로세싱을 수행하지 않을 수 있다. 예를 들어, 프로세서는 센서의 시야 내의 물체를 인식, 정의, 로케이팅 또는 달리 특성화하기 위해 센서 데이터에 대한 분석들을 수행하지 않을 수 있다. 따라서, 수신된 미처리 센서 데이터를 프로세싱함으로써 물체가 인식 또는 특성화될 수 있지만, 다양한 실시예들은 이러한 계산 집약적 동작들을 수반 또는 요구하지 않는다. 일부 실시예들에서, 프로세서는 센서 데이터에 의해 표현된 물체를 식별하기 위한 알고리즘 또는 공식들에, 프로세싱되지 않은 센서 데이터를 적용하지 않을 수 있다.
[0045] 각각의 검출된 장애물(예를 들어, 140, 142)에 대해 또는 각각의 식별된 포인트(예를 들어, 404(1-n), 406(1-n))에 대해, 프로세서는, 운송수단(402)의 속도를 조절하기 위해 프로세서가 사용할 수 있는 속도 제약을 결정할 수 있다. (예를 들어, 운송수단(402)의) 속도 및 속도 제약 각각은, 방향 컴포넌트 및 속력 컴포넌트를 포함하는 벡터 양일 수 있다. 일부 실시예들에서, 운송수단(402)의 프로세서는 장애물 상의 각각의 포인트에 대한 속도 제약을 결정할 수 있다. 속도 제약의 결정은 운송수단으로부터 장애물 또는 포인트까지의 거리 및 방향에 기초할 수 있다. 다양한 실시예들에서, 장애물 또는 포인트까지의 거리 및/또는 방향이 변함에 따라 프로세서는 새로운/상이한 속도 제약들을 결정할 수 있다. 다양한 실시예들에서, 운송수단이 각각의 장애물 또는 포인트에 대한 공간을 통해 이동함에 따라 프로세서는 속도 제약들을 결정할 수 있다. 일부 실시예들에서, 프로세서는 프로세서의 이용가능한 프로세싱 자원들 및 능력들에 따라 초당 여러번(잠재적으로 초당 수백 또는 수천번) 속도 제약들을 결정할 수 있다.
[0046] 다양한 실시예들에서, 운송수단으로부터 장애물 또는 포인트까지 결정된 거리는 정지 거리를 포함할 수 있다. 정지 거리는, 장애물 또는 포인트와의 충돌을 회피하기 위해 운송수단이 장애물 또는 포인트를 향해 이동하는 것을 정지해야 하는, 장애물(또는 포인트)로부터의 완충 거리일 수 있다. 일부 실시예들에서, 정지 거리는 적어도 운송수단의 길이(또는 운송수단의 크기의 다른 측정)일 수 있다. 정지 거리는 또한 운송수단과 장애물 또는 포인트 사이에 더 큰 완충기를 제공하기 위해 추가적인 거리를 포함할 수 있다. 프로세서는 운송수단 센서의 감도에 기초하여 정지 거리를 결정 또는 조절할 수 있다. 예를 들어, 양안 카메라 센서는 최소 깊이 인지를 가질 수 있고, 프로세서는 센서의 최소 깊이 인지에 기초하여 정지 거리를 결정할 수 있다. 프로세서는 또한 운송수단 속도, 운송수단 질량(예를 들어, 소정 속도로 이동하는 운송수단의 정지 거리), 프로세서의 프로세싱 속력, 및 운송수단의 동력학으로부터 유도될 수 있는 임의의 다른 특성에 기초하여 정지 거리를 결정 또는 조절할 수 있다.
[0047] 일부 실시예들에서, 프로세서는 다음과 같이 표현될 수 있는 거리 값 "d"를 결정할 수 있다.
Figure 112019048033811-pct00001
수식 1
여기서 "D"는 운송수단으로부터 장애물 또는 포인트까지의 총 거리를 표현하고; "δ"는 정지 거리를 표현하고; "d"는 운송수단으로부터 정지 거리까지의 거리(즉, 정지 거리보다 작은 총 거리)를 표현한다.
[0048] 다양한 실시예들에서, 프로세서는 운송수단의 본체 좌표 프레임의 기준 축과 운송수단으로부터 장애물 또는 포인트까지 확장된 라인 사이의 각도를 표현하는 각도 "θ"를 결정함으로써 장애물 또는 포인트의 포지션을 결정할 수 있다. 일부 실시예들에서, 프로세서는 본체 좌표 프레임의 둘 이상의 기준 축들과 운송수단으로부터 장애물 또는 포인트까지 확장되는 라인 사이의 둘 이상의 각도들(예를 들어, x-축으로부터의 각도, y-축으로부터의 각도 및 z-축으로부터의 각도 중 하나 이상)을 결정할 수 있다. 다양한 실시예들에서, 운송수단이 장애물 또는 포인트들에 대해 이동함에 따라 프로세서는 새로운/상이한 각도들 및 거리들을 결정할 수 있다.
[0049] 도 4b는 다양한 실시예들에 따른 운송수단 충돌 회피(400) 방법을 예시한다. 도 1 내지 도 4b를 참조하면, 운송수단(402)(운송수단(102 및 200)과 유사할 수 있음)의 프로세서(예를 들어, 프로세서(220))는, 다수의 속도 제약들을 충족하는 속도 솔루션을 결정하기 위해 프로세서가 사용할 수 있는 다수의 속도 제약들을 결정할 수 있다. 예를 들어, 3개의 포인트들(예를 들어, 포인트들(404b, 404c 및 406a))에 대해, 프로세서는 각각의 속도 제약들(410, 420 및 430)을 결정할 수 있다. 프로세서는 운송수단의 속도를 한정 또는 제한하기 위해 속도 제약들(410, 420 및 430)을 사용할 수 있다. 일부 실시예들에서, 프로세서는 운송수단의 속도를 각각의 포인트(또는 장애물)의 기준 프레임 내로 한정 또는 제한하기 위해 속도 제약들(410, 420 및 430)을 사용할 수 있다. 일부 실시예들에서, 프로세서는 입력된(예를 들어, 명령된 또는 커맨드된) 운송수단 속도(예를 들어, Vinput(440))를 포함하는 내비게이션 명령을 수신할 수 있고, 프로세서는 하나 이상의 속도 솔루션들(예를 들어, Vsolution(450))을 결정하기 위해 속도 제약들(410, 420 및 430)) 및 입력 속도 Vinput(440)를 사용할 수 있다. 다양한 실시예들에서, 입력 속도(440) 및 속도 솔루션(450) 각각은 방향 컴포넌트 및 속도 컴포넌트를 포함할 수 있다.
[0050] 일부 실시예들에서, 속도 제약은 운송수단이 장애물 또는 포인트와 충돌함이 없이 달성할 수 있는(또는 운송수단이 달성하도록 프로세서가 허용할 수 있는) 최대 속도를 표현할 수 있다. 속도 제약들은 함수에 의해 표현될 수 있다:
Figure 112019048033811-pct00002
수식 2
여기서 "V"는 속도 제약을 표현하고, "a"는 최대 가속도(일정할 수 있거나 그렇지 않을 수 있음)를 표현하고, "d"는 운송수단으로부터 정지 거리까지의 거리를 표현한다.
[0051] 다양한 실시예들에서, 결정된 속도 제약은, 포인트 또는 장애물로부터 가장 먼 정지 거리의 종료점에 위치된, 운송수단과 장애물 또는 포인트 사이의 가상 "펜스" 또는 "장벽"을 정의하는 하이퍼평면(hyperplane)으로서 표현될 수 있다. 프로세서는 각각의 속도 제약을 충족하는(예를 들어, 그보다 작거나 그와 동일한) 속도 솔루션을 결정하여 운송수단이 각각의 장애물 또는 포인트에 대한 정지 거리 내로 이동하는 것을 방지할 때 각각의 속도 제약(410, 420 및 430)을 사용할 수 있다. 예를 들어, 도 4b에 예시된 바와 같이, 입력 속도 Vinput(440))는 속도 제약들(410 및 420)을 넘는다(이의 위 및 좌측에 예시됨). 프로세서는, 속도 제약들(410, 420 및 430)(프로세서가 총괄적으로 고려할 수 있음)을 사용하여, 속도 제약들(410, 420 및 430) 내에 있는(아래인 것으로 예시되는) 속도 솔루션 Vsolution(450)을 리턴할 수 있다. 따라서, 일부 실시예들에서, 프로세서는 결합된 속도 제약들(410, 420 및 430)에 의해 운송수단의 속도를 한정 또는 제한할 수 있다.
[0052] 다양한 실시예들에서, 프로세서는 하나 이상의 장애물들 또는 포인트들과의 충돌을 회피하기 위해 속도 제약들을 사용하여 내비게이션 명령에서 수정 또는 조절할 수 있다. 예를 들어, 운송수단은 입력 속도(440)를 표시하는 내비게이션 명령을 포착할 수 있다. 일부 실시예들에서, 프로세서는 사용자 입력으로부터, 예를 들어, 제어기(130)로부터 내비게이션 명령을 포착할 수 있다. 일부 실시예들에서, 프로세서는 운송수단의 메모리에 저장될 수 있는 저장된 내비게이션 데이터에 액세스함으로써 내비게이션 명령을 포착할 수 있다. 일부 실시예들에서, 프로세서는 네트워크 엘리먼트(110)와 같은 원격 소스로부터 내비게이션 데이터의 송신을 수신함으로써 내비게이션 명령을 포착할 수 있다.
[0053] 내비게이션 명령은 운송수단이 이동해야 하는 방향 및 속력을 표시하는 방향 컴포넌트 및 속력 컴포넌트를 포함할 수 있다. 원하는 속도(440)가 제약들(410, 420 및 430) 중 하나 이상을 초과한다고 프로세서가 결정하면, 프로세서는 속도 제약들(410, 420 및 430)을 충족할(예를 들어, 위반하지 않을) 속도 솔루션들을 결정하기 위해 원하는 속도(440) 및 속도 제약들(410, 420 및 430)을 사용하여 최적화 함수를 실행할 수 있다. 일부 실시예들에서, 속도 제약들은 등식 표현을 사용하여 생성되는 한편, 각각의 속도 제약은 임계치 속도를 제공하는 부등식 표현("속도 부등식 제약")으로 표현될 수 있고, 그 아래에서 프로세서는 운송수단 속도를 유지해야 한다. 예를 들어, 속도 부등식 제약은 함수에 의해 표현될 수 있다:
Figure 112019048033811-pct00003
수식 3
여기서 "
Figure 112019048033811-pct00004
"는 운송수단으로부터 장애물 또는 포인트 "i"까지의 벡터를 표현하고, "a"는 최대 가속도(일정할 수 있거나 그렇지 않을 수 있음), "d"는, 운송수단이 장애물 또는 포인트와의 충돌을 회피할 수 있는 거리(예를 들어, 운송수단으로부터 장애물 또는 포인트에 대한 정지 거리까지의 거리)를 표현한다. 일부 실시예들에서, 프로세서는 하나 이상의 속도 솔루션들(450)을 생성하기 위해 속도 제약들(410, 420, 430) 및 원하는 속도(440)를 최적화 함수에 전달할 수 있다. 속도 솔루션들(450)은, 운송수단의 내비게이션 유닛/비행 제어기에 의해 구현되면, 운송수단이 장애물(들) 또는 포인트(들)와 충돌하는 것을 방지할 대안적 속도들일 수 있다.
[0054] 일부 실시예들에서, 운송수단은 하나 이상의 생성된 속도 솔루션들(450)을 원하는 속도(440)와 비교할 수 있고, 원하는 속도(440)의 속도 컴포넌트 및 방향 컴포넌트 중 적어도 하나에 가장 근접하게 매칭하는 속도 솔루션(450)을 선택할 수 있다. 따라서, 일부 실시예들에서, 프로세서는 내비게이션 명령의 방향 컴포넌트에 가장 근접하게 매칭하는 방향 컴포넌트를 갖는 속도 솔루션을 선택할 수 있다. 일부 실시예들에서, 프로세서는 내비게이션 명령의 속력 컴포넌트에 가장 근접하게 매칭하는 속도 솔루션을 선택할 수 있다. 일부 실시예들에서, 프로세서는 내비게이션 명령의 방향 및 속력 컴포넌트에 가장 근접하게 매칭하는 방향 컴포넌트 및 속력 컴포넌트 둘 모두를 갖는 속도 솔루션을 선택할 수 있다. 일부 실시예들에서, 프로세서는 속도 제약들(410, 420 및 430)을 반복적으로(예를 들어, 주기적으로 또는 비주기적으로) 재결정할 수 있고, 운송수단이 장애물들 또는 포인트들에 대해 이동함에 따라 충돌을 회피하기 위해 속도 솔루션들(450)을 재결정할 수 있다. 일부 실시예들에서, 속도 제약들 및 속도 솔루션들의 반복적 재결정은 프로세서가 내비게이션 명령에 가장 근접하게 매칭하는 결정된 속도 솔루션을 선택할 수 있게 할 수 있다. 그 다음, 프로세서는 선택된 속도 솔루션에 기초하여 운송수단 속도를 조절할 수 있다. 동작 시에, 속도 제약들 및 속도 솔루션들의 반복적 재결정 및 그에 기초한 운송수단 속도의 조절은 프로세서가 운송수단 조작자에게 자연스럽고 방해가 안 되는 방식으로 운송수단 속도를 조절할 수 있게 할 수 있다. 일부 구현들에서, 변경되지 않은 내비게이션 입력이 장애물 또는 포인트와 운송수단 충돌을 초래할 수 있는 경우, 운송수단 속도를 조절하기 위해 프로세서에 의해 결정된 속도 솔루션의 사용은 운송수단이 장애물 또는 포인트와의 충돌을 회피하는 경로를 따라 이동하게 할 수 있고, 심지어, 그렇지 않으면 내비게이션 입력에 근접하게 매칭하는 경로를 따라 장애물 또는 포인트를 따라 스커트(skirt)하거나, 이를 따라 슬라이딩하거나, 그 아래에서 덕(duck)하거나 또는 그 위에서 슬라이딩하는 운송수단에 의한 모션을 초래할 수 있다.
[0055] 일부 실시예들에서, 프로세서는 프로세싱되지 않은("미처리") 센서 데이터를 사용할 수 있고, 추가적인 결정을 수행하지 않고, 가정들을 행하지 않고 그리고/또는 하나 이상의 식별된 포인트들에 대해 결론들을 도출하지 않을 수 있다. 예를 들어, 프로세서는 예를 들어, 하나 이상의 차원들에서 하나 이상의 포인트들 주위의 볼륨을 결정하지 않을 수 있다. 다른 예로, 프로세서는 하나 이상의 포인트들이 정적인지 또는 이동중인지 여부를 결정하지 않을 수 있다.
[0056] 도 5는 다양한 실시예들에 따른 운송수단 충돌 회피(500) 방법을 예시한다. 도 1 내지 도 5를 참조하면, 방법(500)은 운송수단(예를 들어, 운송수단(102, 200 및 402)의 프로세서(예를 들어, 프로세서(220) 등)에 의해 구현될 수 있다.
[0057] 운송수단(502)(운송수단(102, 200 또는 402)과 유사할 수 있음)의 프로세서는 (예를 들어, 사용자 입력, 저장된 내비게이션 데이터, 네트워크 엘리먼트 등으로부터) 내비게이션 명령을 포착할 수 있다 내비게이션 명령은 방향 컴포넌트 및 속력 컴포넌트를 포함할 수 있는 속도를 포함할 수 있다. 예를 들어, 내비게이션 명령은 장애물들(140 및 142) 사이의 경로(504)를 따라 운송수단(502)을 지향시킬 수 있다. 다른 예로서, 내비게이션 명령은 장애물(142)을 향한 (또는 포인트들(406a, 406b,…406(n)) 중 하나 이상을 향한) 경로(506)를 따라 운송수단(502)을 지향시킬 수 있다. 다른 예로서, 내비게이션 명령은 장애물(140)을 향한 (또는 하나 이상의 포인트들(404a, 404b,…406(n))을 향한) 경로(508)를 따라 운송수단을 지향시킬 수 있다. 경로(504)를 따른 운송수단(502)에 의한 이동은 운송수단(502)의 속도에 대한 어떠한 조절도 요구하지 않을 수 있다.
[0058] 반대로, 운송수단(502)의 속도에 대한 어떠한 조절 없이 경로(506)를 따르는 것은 운송수단(502)과 장애물(142) 사이의 충돌을 초래할 수 있다. 그러나, 장애물(142)(또는 포인트들(406a, 406a, … 406(n))과 연관된 속도 제약들을 결정하면, 프로세서는 속도 제약들을 충족하는(예를 들어, 그보다 작거나 그와 동일한) 하나 이상의 속도 솔루션들을 결정하기 위해 속도 제약들을 사용할 수 있다. 일부 실시예들에서, 프로세서는 내비게이션 명령에 가장 근접하게 매칭하는 속도 솔루션을 선택할 수 있고, 선택된 속도 솔루션에 기초하여 운송수단(502)의 속도를 조절할 수 있다.
[0059] 예를 들어, 경로(506)를 따라 이동하는 운송수단(502)이 명령된 속도와 무관하게 장애물(142)에 근접한 위치(506a)에 접근하거나 도달함에 따라, 프로세서는 속도 제약(들)을 충족하는 하나 이상의 속도 솔루션들을 결정할 수 있고, 선택된 속도 솔루션에 기초하여 운송수단 속도를 조절하여 운송수단(502)이 장애물(142)과 충돌하는 것을 방지할 수 있다. 일부 실시예들에서, 프로세서는 내비게이션 명령의 방향 컴포넌트에 가장 근접하게 매칭하는 방향 컴포넌트를 갖는 속도 솔루션을 선택할 수 있다. 일부 실시예들에서, 프로세서는 내비게이션 명령의 속력 컴포넌트에 가장 근접하게 매칭하는 속도 솔루션을 선택할 수 있다. 일부 실시예들에서, 프로세서는 내비게이션 명령의 방향 및 속력 컴포넌트에 가장 근접하게 매칭하는 방향 컴포넌트 및 속력 컴포넌트 둘 모두를 갖는 속도 솔루션을 선택할 수 있다.
[0060] 예를 들어, 선택된 속도 솔루션에 대해, 프로세서는 운송수단 속도를 조절할 수 있어서, 장애물(142)과의 충돌을 회피하는 경로를 따르도록 운송수단(502)을 지향시킬 수 있다. 예를 들어, 내비게이션 명령은 그렇지 않으면 운송수단(502)이 장애물(142)과 충돌하게 할 속도를 포함하지만, 프로세서는, 운송수단(502)이 예를 들어, 위치(506a)로부터 위치(506b)까지 장애물(142) 주위를 이동하도록 선택된 속도 솔루션에 기초하여 운송수단(502)의 속도를 조절할 수 있다. 다양한 실시예들에서, 프로세서는 장애물들 또는 포인트들까지 변하는 거리들 및 방향들에 기초하여 속도 제약들을 반복적으로 재결정할 수 있다. 일부 실시예들에서, 운송수단(502)이 위치(506b)에 도달하거나 접근하는 경우, 프로세서는 (일부 실시예들에서, 내비게이션 명령의 방향 컴포넌트 및/또는 속도 컴포넌트에 기초하여) 다른 속도 솔루션을 선택할 수 있고, 프로세서는 그에 따라 운송수단 속도를 조절할 수 있다. 예를 들어, 위치(506b)에서, 프로세서는 내비게이션 명령의 방향 컴포넌트 및/또는 속력 컴포넌트에 기초하여 운송수단(502)의 속도를 다시 조절하여, 내비게이션 명령의 속도에 더 근접하게 매칭하는 속도를 사용하여 이동하도록 운송수단(502)을 지향시킬 수 있다. 도 5는 경로(506)를 따른 2개의 위치들(506a 및 506b)을 예시하지만, 다양한 실시예들에서 프로세서는 다수의 시점들에 운송수단 속도를 조절할 수 있다. 예를 들어, 프로세서는 운송수단으로부터 각각의 장애물 또는 포인트까지의 거리 및 방향을 반복적으로 재결정할 수 있고, 각각의 장애물 또는 포인트에 대한 속도 제약들을 반복적으로 재결정할 수 있다. 프로세서는 또한 재결정된 속도 제약들에 기초하여 새로운 속도 솔루션들을 결정할 수 있고, 선택된 속도 솔루션에 기초하여 운송수단 속도를 조절할 수 있다.
[0061] 다른 예로서, 선택된 속도 솔루션에 기초하여, 프로세서는 운송수단(502)의 속도에 대한 어떠한 조절 없이 따르는 경우 운송수단(502)과 장애물(140) 사이의 충돌을 초래할 수 있는 경로(508)를 따르도록 운송수단(502)을 지향시킬 수 있다. 장애물(140)이 벽과 같이 운송수단(502)이 쉽게 그 주위를 내비게이팅할 수 없는 장애물을 포함하는 경우, 프로세서는 속도 제약들을 결정할 수 있고, 운송수단(502)이 장애물(140)과 충돌하는 것을 방지하는 속도 솔루션을 선택할 수 있다. 이러한 예에서, 장애물(140)은 그 주위를 내비게이팅될 수 없기 때문에, 프로세서는, 운송수단(502)이 벽 표면과 같은 장애물(140)의 표면을 따라 이동하도록 선택된 속도 솔루션에 기초하여 운송수단 속도를 조절할 수 있다. 따라서, 일부 실시예들에서, 선택된 속도 솔루션에 기초하여 운송수단 속도를 조절하는 것은 "벽 슬라이딩" 조작을 수행하도록 또는 그렇지 않으면 운송수단(502)과 장애물(140) 사이의 충돌을 회피하는 경로를 따라 이동하도록 운송수단(502)을 지향시킬 수 있다.
[0062] 일부 실시예들에서, 프로세서는 내비게이션 명령의 방향 컴포넌트 및/또는 속력 컴포넌트에 가장 근접하게 매칭하는 속도 솔루션을 선택할 수 있다. 일부 실시예들에서, 프로세서는, 조절된 또는 결과적 운송수단 속도가 명령된 운송수단 속도로부터 가능한 한 부드럽게 변하도록, 내비게이션 명령의 방향 및/또는 속력 컴포넌트들에 가장 근접하게 매칭하는 속도 솔루션을 선택할 수 있다. 예를 들어, 프로세서는, 내비게이션 명령의 운송수단 속도와 조절된 운송수단 속도 사이의 변동량이 소정 시간 기간에 걸쳐 임계 변동 내로 유지되도록 속도 솔루션을 선택할 수 있다. 일부 실시예들에서, 프로세서는, 조절된 속도의 방향 컴포넌트 및 속도 컴포넌트 중 하나 이상이 내비게이션 명령의 방향 컴포넌트 및 속도 컴포넌트로부터 소정 시간 기간에 걸쳐 임계 변동 내에서 변하도록 속도 솔루션을 선택할 수 있다.
[0063] 운송수단(502)의 조절된 속도의 방향 및 속력 각각은 내비게이션 명령의 속도의 방향 컴포넌트 및 속력 컴포넌트와 독립적으로 변할 수 있다. 예를 들어, 프로세서의 위치(508a)에서 시작하는 것은 내비게이션 명령의 방향 컴포넌트와 상당히 상이한(예를 들어, 90°) 방향에서 이동하는 한편 내비게이션 명령의 속도 컴포넌트에 가장 근접하게 매칭할 수 있는 속력 컴포넌트를 갖도록 및 그 반대가 되도록 운송수단(502)의 속도를 조절할 수 있다.
[0064] 도 6은 다양한 실시예들에 따른 운송수단 충돌 회피 방법(600)을 예시한다. 도 1 내지 도 6을 참조하면, 방법(600)은 운송수단(예를 들어, 운송수단(102, 200, 402, 502 및 602)의 프로세서(예를 들어, 프로세서(220) 등)에 의해 구현될 수 있다.
[0065] 블록(602)에서, 운송수단의 프로세서는 장애물을 검출할 수 있다. 일부 실시예들에서, 운송수단의 프로세서는 운송수단의 하나 이상의 센서들을 사용하여 장애물을 검출할 수 있다.
[0066] 블록(604)에서, 운송수단의 프로세서는 운송수단으로부터 장애물까지의 거리 및 방향을 결정할 수 있다. 일부 실시예들에서, 프로세서는 하나 이상의 포인트들을 식별할 수 있고, 프로세서는 운송수단으로부터 하나 이상의 포인트들까지의 거리 및 방향을 결정할 수 있다.
[0067] 블록(606)에서, 프로세서는 장애물까지의 거리 및 방향에 기초하여 장애물에 대한 속도 제약을 결정할 수 있다. 일부 실시예들에서, 프로세서는 하나 이상의 포인트들 각각에 대한 속도 제약을 결정할 수 있다. 일부 실시예들에서, 프로세서는, (예를 들어, 경로 플래닝 또는 다른 내비게이션 플래닝 동작의 일부로서) 앞선 플래닝 동작보다는 (예를 들어, 내비게이션 명령의 포착에 기초한) 반응적 동작일 수 있는 포착된 내비게이션 명령에 기초하여 하나 이상의 속도 제약들을 결정할 수 있다. 일부 실시예들에서, 움직임 제어기 모듈(예를 들어, 움직임 제어기 모듈(222a))은 속도 제약들을 결정할 수 있다. 일부 실시예들에서, 속도 제약은 속도 부등식 제약을 포함할 수 있다.
[0068] 블록(608)에서, 프로세서는 내비게이션 명령을 포착할 수 있다.
[0069] 블록(610)에서, 프로세서는 속도 제약(들)을 충족하는 하나 이상의 속도 솔루션들을 결정할 수 있다. 일부 실시예들에서, 프로세서는, (예를 들어, 경로 플래닝 또는 다른 내비게이션 플래닝 동작의 일부로서) 앞선 플래닝 동작보다는 (예를 들어, 내비게이션 명령의 포착에 기초한) 반응적 동작일 수 있는 포착된 내비게이션 명령에 기초하여 하나 이상의 속도 솔루션들을 결정할 수 있다. 일부 실시예들에서, 움직임 제어기 모듈(예를 들어, 비행 제어기 모듈(222a))은 속도 제약(들)을 충족하는 하나 이상의 속도 솔루션들을 결정할 수 있다.
[0070] 블록(612)에서, 프로세서는 내비게이션 명령에 가장 근접하게 매칭하는 하나 이상의 속도 솔루션들로부터 결정된 속도 솔루션을 선택할 수 있다. 일부 실시예들에서, 프로세서는 운송수단으로부터의 방향과 장애물 사이의 거리 및 내비게이션 명령 중 어느 하나 또는 둘 모두에 기초하여 속도 솔루션을 선택할 수 있다.
[0071] 블록(614)에서, 프로세서는 선택된 속도 솔루션에 기초하여 운송수단 속도를 조절할 수 있다.
[0072] 프로세서는 다시 블록(602)에서 장애물을 검출할 수 있다. 다양한 구현들에서, 프로세서는 동일한 장애물(예를 들어, 장애물(140 및 142))에 대해 블록들(602-614)의 동작들을 반복적으로 수행하여, 프로세서가 하나 이상의 속도 제약들을 업데이트 또는 조절할 수 있게 하고, 업데이트된 또는 조절된 속도 제약(들)에 따라 운송수단 속도를 조절할 수 있게 할 수 있다.
[0073] 도 7은 다양한 실시예들에 따른 운송수단 충돌 회피 방법(700)을 예시한다. 도 1 내지 도 7을 참조하면, 방법(700)은 운송수단(예를 들어, 운송수단(102, 200, 402, 502 및 602)의 프로세서(예를 들어, 프로세서(220) 등)에 의해 구현될 수 있다. 블록들(608-614)에서, 디바이스 프로세서는 방법(600)의 유사하게 넘버링된 블록들의 동작들을 수행할 수 있다.
[0074] 블록(702)에서, 운송수단의 프로세서는 하나 이상의 포인트들을 포함하는 센서 데이터를 수신할 수 있다. 일부 실시예들에서, 프로세서는 프로세싱되지 않은 또는 미처리 센서 데이터, 예를 들어, 카메라로부터의 프로세싱되지 않은 이미지 데이터를 수신할 수 있고, 센서 데이터에 표현된 물체를 인식 또는 식별하기 위해 수신된 미처리 센서 데이터에 대한 추가적인 프로세싱을 수행하지 않을 수 있다. 예를 들어, 프로세서는 센서의 시야 내의 물체를 인식, 정의, 로케이팅 또는 달리 특성화하기 위해 센서 데이터를 사용하여 결정을 수행하지 않을 수 있다. 일부 실시예들에서, 프로세서는 센서 데이터에 의해 표현된 물체를 식별하기 위한 알고리즘 또는 공식들에, 프로세싱되지 않은 센서 데이터를 적용하지 않을 수 있다.
[0075] 검출된 장애물의 크기, 형상 및 다른 특성들을 결정하는 것과 같이 센서 데이터 내의 장애물을 특성화하는 것은 계산 집약적일 수 있다. 프로세서에 대한 계산 부담을 감소시키기 위해, 일부 실시예들에서, 프로세서는 추가적인 결정들, 예를 들어, 센서의 시야 내에서 장애물을 검출하기 위한(예를 들어, 물체를 검출하거나, 장애물의 크기, 형상 또는 다른 특성을 결정하기 위한) 미처리 센서 데이터에 대한 계산들을 수행함이 없이, 하나 이상의 포인트들(예를 들어, 장애물(140) 상에 예시된 포인트들(404(1-n)) 및 장애물(142) 상에 예시된 포인트들(406(1-n)))을 식별할 수 있다. 일부 실시예들에서, 프로세서는 프로세싱되지 않은(미처리) 센서 데이터를 사용할 수 있고, 추가적인 결정들, 계산들을 수행하지 않고, 가정들을 행하지 않고 그리고/또는 하나 이상의 식별된 포인트들에 대해 결론들을 도출하지 않을 수 있다. 예를 들어, 프로세서는 예를 들어, 하나 이상의 차원들에서 하나 이상의 포인트들 주위의 볼륨, 표면 또는 다른 기하학적 파라미터를 결정하지 않을 수 있다. 다른 예로, 프로세서는 하나 이상의 포인트들이 정적인지 또는 이동중인지 여부를 결정하지 않을 수 있다.
[0076] 블록(704)에서, 운송수단의 프로세서는 운송수단으로부터 하나 이상의 포인트들 각각 까지의 거리 및 방향을 결정할 수 있다. 예를 들어, 프로세서는 카메라를 사용하여 이미지를 수신할 수 있고, 이미지에서 하나 이상의 포인트들을 식별할 수 있다. 일부 구현들에서, 포인트는 이미지의 픽셀에 대응할 수 있다. 일부 구현들에서, 프로세서는 이미지의 각각의 픽셀에 대한 하나의 포인트와 같은 매우 많은 수의 포인트들을 식별 또는 선택할 수 있다. 일부 실시예들에서, 프로세서는 거리 및 방향을 결정하는 것으로부터 더 적은 포인트들을 식별/선택함으로써 프로세싱 부담을 감소시킬 수 있다. 일부 실시예들에서, 프로세서는 이미지의 분해능을 감소시켜, 포인트들을 식별할 픽셀들의 수를 감소시킴으로써 프로세싱 부담을 감소시킬 수 있다.
[0077] 블록(706)에서, 프로세서는 포인트 또는 포인트들까지의 결정된 거리 및 방향에 기초하여 식별된 하나 이상의 포인트들 각각에 대한 속도 제약을 결정할 수 있다. 일부 실시예들에서, 프로세서는 포착된 내비게이션 명령에 기초하여 식별된 하나 이상의 포인트들 각각에 대한 속도 제약을 결정할 수 있다. 포착된 내비게이션 명령은, (예를 들어, 경로 플래닝 또는 다른 내비게이션 플래닝 동작의 일부로서) 앞선 플래닝 동작보다는 (예를 들어, 내비게이션 명령의 포착에 기초한) 반응적 동작일 수 있다. 일부 실시예들에서, 움직임 제어기 모듈(예를 들어, 비행 제어기 모듈(222a))은 속도 제약들을 결정할 수 있다. 일부 실시예들에서, 각각의 속도 제약은 속도 부등식 제약을 포함할 수 있다.
[0078] 다양한 실시예들은 운송수단의 프로세서가 물체와의 충돌을 회피할 수 있게 하여 운송수단의 동작을 개선한다. 다양한 실시예들은 또한 내비게이션 명령의 운송수단 속도에 (일부 경우들에서는 임계치 변동 내에서) 근접하게 매칭하도록 운송수단 속도를 조절함으로써 운송수단의 동작을 개선한다. 다양한 실시예들은 또한 장애물에 하나 이상의 포인트들을 할당하고 포인트들 중 하나 이상에 할당된 속도 제약들을 결정함으로써 운송수단의 프로세서에 대한 계산 부담을 감소시켜, 운송수단의 동작을 개선한다.
[0079] 예시되고 설명된 다양한 실시예들은 청구항들의 다양한 특징들을 예시하기 위해 단지 예들로서 제공된다. 그러나, 임의의 주어진 실시예에 대해 도시되고 설명된 특징들은 반드시 연관된 실시예로 제한되는 것은 아니며, 도시되고 설명된 다른 실시예들과 함께 사용되거나 조합될 수 있다. 추가로, 청구항들은 임의의 하나의 예시적인 실시예에 의해 제한되도록 의도되지 않는다. 예를 들어, 방법들(400, 500, 600 및 700)의 동작들 중 하나 이상은 방법들(400, 500, 600, 700)의 하나 이상의 동작들로 대체되거나 그와 조합될 수 있고 그 반대일 수 있다.
[0080] 전술한 방법 설명들 및 프로세스 흐름 도면들은 단지 예시적인 예들로서 제공되며, 다양한 실시예들의 동작들이 제시된 순서로 수행되어야 함을 요구 또는 의미하도록 의도되지 않는다. 당업자에 의해 인식될 바와 같이, 전술한 실시예들의 동작들의 순서는 임의의 순서로 수행될 수 있다. "그 후, "그 다음", "다음으로" 등과 같은 단어들은 동작들의 순서를 제한하는 것으로 의도되지 않으며; 이러한 단어들은 방법들의 설명을 통해 독자를 안내하기 위해 사용된다. 추가로, 예를 들어, 단수형 표현을 사용하여 엘리먼트들을 단수로 청구하기 위한 임의의 참조는 엘리먼트를 단수로 제한하는 것으로 해석하지 않아야 한다.
[0081] 본원에 개시된 실시예들과 관련하여 설명되는 다양한 예시적인 로직 블록들, 모듈들, 회로들, 및 알고리즘 동작들은 전자 하드웨어, 컴퓨터 소프트웨어, 또는 이 둘의 조합으로서 구현될 수 있다. 하드웨어와 소프트웨어의 이러한 상호 호환성을 명확하게 설명하기 위해, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들, 및 동작들이 일반적으로 이들의 기능적 관점에서 앞서 설명되었다. 이러한 기능이 하드웨어로 구현되는지, 또는 소프트웨어로 구현되는지 여부는 특정 애플리케이션 및 전체 시스템에 대해 부과된 설계 제한들에 의존한다. 당업자들은 설명된 기능을 각각의 특정 애플리케이션에 대해 다양한 방식들로 구현할 수 있지만, 이러한 실시예 판정들이 청구항들의 범위를 벗어나는 것으로 해석되어서는 안 된다.
[0082] 본 명세서에서 개시된 양상들과 관련하여 설명되는 다양한 예시적인 로직들, 로직 블록들, 모듈들, 및 회로들을 구현하기 위해 사용되는 하드웨어는 범용 프로세서, 디지털 신호 프로세서(DSP), 주문형 집적회로(ASIC), 필드 프로그래머블 게이트 어레이(FPGA) 또는 다른 프로그래머블 논리 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 컴포넌트들 또는 본 명세서에 설명된 기능들을 수행하도록 설계된 이들의 임의의 조합으로 구현 또는 수행될 수 있다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 대안으로 프로세서는 임의의 종래 프로세서, 제어기, 마이크로제어기 또는 상태 머신일 수도 있다. 프로세서는 또한 수신기 스마트 물체들의 조합, 예를 들어 DSP 및 마이크로프로세서의 조합, 복수의 마이크로프로세서들, DSP 코어와 결합된 하나 이상의 마이크로프로세서들, 또는 임의의 다른 이러한 구성으로서 구현될 수 있다. 대안적으로, 일부 동작들 또는 방법들은 주어진 기능에 특정된 회로에 의해 수행될 수 있다.
[0083] 하나 이상의 양상들에서, 설명된 기능들은 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 임의의 조합으로 구현될 수 있다. 소프트웨어로 구현되면, 기능들은 하나 이상의 명령들 또는 코드로서 비일시적 컴퓨터 판독가능 저장 매체 또는 비일시적 프로세서 판독가능 저장 매체 상에 저장될 수 있다. 본원에 개시된 방법 또는 알고리즘의 동작들은 비일시적 컴퓨터 판독가능 또는 프로세서 판독가능 저장 매체 상에 상주할 수 있는 프로세서 실행가능 소프트웨어 모듈 또는 프로세서 실행가능 명령들에서 구현될 수 있다. 비일시적 컴퓨터 판독가능 또는 프로세서 판독가능 저장 매체는 컴퓨터 또는 프로세서에 의해 액세스될 수 있는 임의의 저장 매체일 수 있다. 제한이 아닌 예로써, 이러한 비일시적 컴퓨터 판독가능 또는 프로세서 판독가능 저장 매체는 RAM, ROM, EEPROM, FLASH 메모리, CD-ROM, 또는 다른 광학 디스크 저장소, 자기 디스크 저장소 또는 다른 자기 저장 스마트 물체들, 또는 명령들 또는 데이터 구조들의 형태로 요구되는 프로그램 코드를 저장하기 위해 사용될 수 있으며 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함할 수 있다. 본 명세서에서 사용된 것과 같은 디스크(disk 및 disc)는 콤팩트 디스크(CD: compact disc), 레이저 디스크(laser disc), 광 디스크(optical disc), 디지털 다기능 디스크(DVD: digital versatile disc), 플로피 디스크(floppy disk) 및 블루레이 디스크(disc)를 포함하며, 여기서 디스크(disk)들은 보통 데이터를 자기적으로 재생하는 한편, 디스크(disc)들은 데이터를 레이저들에 의해 광학적으로 재생한다. 상기의 것들의 결합들이 또한 비일시적 컴퓨터 판독가능 및 프로세서 판독가능 매체의 범위 내에 포함된다. 추가적으로, 알고리즘 또는 방법의 동작들은, 컴퓨터 프로그램 물건에 통합될 수 있는 비일시적 프로세서 판독가능 저장 매체 및/또는 컴퓨터 판독가능 저장 매체 상에 명령들 및/또는 코드들 중 하나 또는 이들의 임의의 조합 또는 이들의 세트로서 상주할 수 있다.
[0084] 개시된 실시예들의 선행 설명은 임의의 당업자가 청구항들을 사용하거나 실시할 수 있게 하도록 제공된다. 이러한 실시예들에 대한 다양한 변형들이 해당 기술분야에서 통상의 지식을 가진 자들에게 쉽게 명백할 것이며, 본 명세서에 정의된 일반 원리들은 청구항들의 사상 또는 범위를 벗어나지 않으면서 다른 실시예들에 적용될 수 있다. 따라서, 본 개시는 본원에 제시된 실시예들로 한정되는 것으로 의도되는 것이 아니라, 하기 청구항들 및 본원에 개시된 원리들 및 신규한 특징들에 부합하는 가장 넓은 범위에 따르는 것이다.

Claims (25)

  1. 운송수단 충돌 회피 방법으로서,
    하나 이상의 포인트들을 포함하는 카메라 데이터를 수신하는 단계 ― 각각의 포인트는 이미지의 픽셀에 대응함 ―;
    운송수단으로부터 상기 하나 이상의 포인트들까지의 거리 및 방향을 결정하는 단계;
    상기 운송수단으로부터 상기 하나 이상의 포인트들 각각까지 결정된 거리 및 방향에 기초하여 상기 하나 이상의 포인트들 각각에 대한 속도 제약을 결정하는 단계;
    운송수단 내비게이션 명령에 기초하여 상기 결정된 속도 제약들을 충족하는 하나 이상의 속도 솔루션들을 결정하는 단계;
    상기 운송수단 내비게이션 명령에 기초하여 상기 결정된 하나 이상의 속도 솔루션들로부터 속도 솔루션을 선택하는 단계; 및
    상기 선택된 속도 솔루션에 기초하여 운송수단 속도를 조절하는 단계를 포함하는, 운송수단 충돌 회피 방법.
  2. 제1 항에 있어서,
    카메라 데이터를 수신하는 단계는 프로세싱되지 않은 카메라 데이터를 수신하는 단계를 포함하는, 운송수단 충돌 회피 방법.
  3. 제1 항에 있어서,
    상기 하나 이상의 포인트들 각각에 대한 속도 제약은 속도 부등식 제약을 포함하는, 운송수단 충돌 회피 방법.
  4. 제3 항에 있어서,
    상기 운송수단으로부터 상기 하나 이상의 포인트들까지의 상기 거리 및 상기 방향은,
    상기 운송수단으로부터 장애물까지의 거리 및 방향을 결정하는 단계를 포함하는, 운송수단 충돌 회피 방법.
  5. 제4 항에 있어서,
    상기 장애물은 상기 하나 이상의 포인트들에 의해 표현되는 장애물을 포함하는, 운송수단 충돌 회피 방법.
  6. 제1 항에 있어서,
    상기 운송수단으로부터 상기 하나 이상의 포인트들 각각까지 결정된 거리 및 방향에 기초하여 상기 하나 이상의 포인트들 각각에 대한 속도 제약을 결정하는 단계는,
    상기 운송수단으로부터 상기 하나 이상의 포인트들에 의해 표현되는 장애물까지 결정된 거리 및 방향에 기초하여 상기 하나 이상의 포인트들 각각에 대한 속도 제약을 결정하는 단계를 포함하는, 운송수단 충돌 회피 방법.
  7. 제1 항에 있어서,
    상기 운송수단 내비게이션 명령은 방향 컴포넌트를 포함하고,
    상기 운송수단 내비게이션 명령에 기초하여 결정된 하나 이상의 속도 솔루션들로부터 상기 속도 솔루션을 선택하는 단계는 상기 운송수단 내비게이션 명령의 방향 컴포넌트에 가장 근접하게 매칭하는 방향 컴포넌트를 갖는 상기 속도 솔루션을 선택하는 단계를 포함하는, 운송수단 충돌 회피 방법.
  8. 제1 항에 있어서,
    상기 운송수단 내비게이션 명령은 속력 컴포넌트를 포함하고,
    상기 운송수단 내비게이션 명령에 기초하여 결정된 하나 이상의 속도 솔루션들로부터 상기 속도 솔루션을 선택하는 단계는 상기 운송수단 내비게이션 명령의 속력 컴포넌트에 가장 근접하게 매칭하는 속력 컴포넌트를 갖는 상기 속도 솔루션을 선택하는 단계를 포함하는, 운송수단 충돌 회피 방법.
  9. 운송수단으로서,
    하나 이상의 포인트들을 포함하는 카메라 데이터를 수신하고 ― 각각의 포인트는 이미지의 픽셀에 대응함 ―;
    상기 운송수단으로부터 상기 하나 이상의 포인트들까지의 거리 및 방향을 결정하고;
    상기 운송수단으로부터 상기 하나 이상의 포인트들 각각까지 결정된 거리 및 방향에 기초하여 상기 하나 이상의 포인트들 각각에 대한 속도 제약을 결정하고;
    운송수단 내비게이션 명령에 기초하여 상기 결정된 속도 제약들을 충족하는 하나 이상의 속도 솔루션들을 결정하고;
    상기 운송수단 내비게이션 명령에 기초하여 상기 결정된 하나 이상의 속도 솔루션들로부터 속도 솔루션을 선택하고;
    상기 선택된 속도 솔루션에 기초하여 운송수단 속도를 조절하기 위한 프로세서 실행가능 명령들로 구성되는 프로세서를 포함하는, 운송수단.
  10. 제9 항에 있어서,
    상기 프로세서는 프로세싱되지 않은 카메라 데이터를 포함하는 카메라 데이터 센서 데이터를 수신하기 위한 프로세서 실행가능 명령들로 추가로 구성되는, 운송수단.
  11. 제9 항에 있어서,
    상기 프로세서는 상기 하나 이상의 포인트들 각각에 대한 속도 제약이 속도 부등식 제약을 포함하도록 프로세서 실행가능 명령들로 추가로 구성되는, 운송수단.
  12. 제11 항에 있어서,
    상기 프로세서는
    상기 운송수단으로부터 장애물까지의 거리 및 방향을 결정하기 위한 프로세서 실행가능 명령들로 추가로 구성되는, 운송수단.
  13. 제12 항에 있어서,
    상기 프로세서는 상기 장애물이 상기 하나 이상의 포인트들에 의해 표현되는 장애물을 표현하도록 프로세서 실행가능 명령들로 추가로 구성되는, 운송수단.
  14. 제9 항에 있어서,
    상기 프로세서는
    상기 운송수단으로부터 상기 하나 이상의 포인트들에 의해 표현되는 장애물까지 결정된 거리 및 방향에 기초하여 상기 하나 이상의 포인트들 각각에 대한 속도 제약을 결정하기 위한 프로세서 실행가능 명령들로 추가로 구성되는, 운송수단.
  15. 제9 항에 있어서,
    상기 프로세서는 상기 운송수단 내비게이션 명령이 방향 컴포넌트를 포함하도록 프로세서 실행가능 명령들로 추가로 구성되고,
    상기 프로세서는 상기 운송수단 내비게이션 명령의 방향 성분에 가장 근접하게 매칭하는 방향 성분을 갖는 속도 솔루션을 선택하기 위한 프로세서 실행가능 명령들로 추가로 구성되는, 운송수단.
  16. 제9 항에 있어서,
    상기 프로세서는 상기 운송수단 내비게이션 명령이 속력 컴포넌트를 포함하도록 프로세서 실행가능 명령들로 추가로 구성되고,
    상기 프로세서는 상기 운송수단 내비게이션 명령의 속력 컴포넌트에 가장 근접하게 매칭하는 속력 컴포넌트를 갖는 상기 속도 솔루션을 선택함으로써 상기 운송수단 내비게이션 명령에 기초하여 상기 속도 솔루션을 선택하기 위한 프로세서 실행가능 명령들로 추가로 구성되는, 운송수단.
  17. 운송수단으로서,
    하나 이상의 포인트들을 포함하는 카메라 데이터를 수신하기 위한 수단 ― 각각의 포인트는 이미지의 픽셀에 대응함 ―;
    상기 운송수단으로부터 상기 하나 이상의 포인트들까지의 거리 및 방향을 결정하기 위한 수단;
    상기 운송수단으로부터 상기 하나 이상의 포인트들 각각까지 결정된 거리 및 방향에 기초하여 상기 하나 이상의 포인트들 각각에 대한 속도 제약을 결정하기 위한 수단;
    운송수단 내비게이션 명령에 기초하여 상기 결정된 속도 제약들을 충족하는 하나 이상의 속도 솔루션들을 결정하기 위한 수단;
    상기 운송수단 내비게이션 명령에 기초하여 상기 결정된 하나 이상의 속도 솔루션들로부터 속도 솔루션을 선택하기 위한 수단; 및
    상기 선택된 속도 솔루션에 기초하여 운송수단 속도를 조절하기 위한 수단을 포함하는, 운송수단.
  18. 프로세서 실행가능 명령들이 저장된 비일시적 프로세서 판독가능 저장 매체로서,
    상기 프로세서 실행가능 명령들은 운송수단의 프로세서로 하여금,
    하나 이상의 포인트들을 포함하는 카메라 데이터를 수신하는 것 ― 각각의 포인트는 이미지의 픽셀에 대응함 ―;
    상기 운송수단으로부터 상기 하나 이상의 포인트들까지의 거리 및 방향을 결정하는 것;
    상기 운송수단으로부터 상기 하나 이상의 포인트들 각각까지 결정된 거리 및 방향에 기초하여 상기 하나 이상의 포인트들 각각에 대한 속도 제약을 결정하는 것;
    운송수단 내비게이션 명령에 기초하여 상기 결정된 속도 제약들을 충족하는 하나 이상의 속도 솔루션들을 결정하는 것;
    상기 운송수단 내비게이션 명령에 기초하여 상기 결정된 하나 이상의 속도 솔루션들로부터 속도 솔루션을 선택하는 것; 및
    상기 선택된 속도 솔루션에 기초하여 운송수단 속도를 조절하는 것을 포함하는 동작들을 수행하게 하도록 구성되는, 비일시적 프로세서 판독가능 저장 매체.
  19. 제18 항에 있어서,
    저장된 프로세서-실행가능 소프트웨어 명령들은 상기 운송수단의 프로세서로 하여금, 카메라 데이터를 수신하는 것이 프로세싱되지 않은 카메라 데이터를 수신하는 것을 포함하도록 하는 동작들을 수행하게 하도록 구성되는, 비일시적 프로세서 판독가능 저장 매체.
  20. 제18 항에 있어서,
    저장된 프로세서-실행가능 소프트웨어 명령들은 상기 운송수단의 프로세서로 하여금, 상기 하나 이상의 포인트들 각각에 대한 속도 제약이 속도 부등식 제약을 포함하도록 하는 동작들을 수행하게 하도록 구성되는, 비일시적 프로세서 판독가능 저장 매체.
  21. 제20 항에 있어서,
    저장된 프로세서-실행가능 소프트웨어 명령들은 상기 운송수단의 프로세서로 하여금, 상기 운송수단으로부터 상기 하나 이상의 포인트들까지의 거리 및 방향을 결정하는 것이
    상기 운송수단으로부터 장애물까지의 거리 및 방향을 결정하는 것을 포함하도록 하는 동작들을 수행하게 하도록 구성되는, 비일시적 프로세서 판독가능 저장 매체.
  22. 제21 항에 있어서,
    저장된 프로세서-실행가능 소프트웨어 명령들은 상기 운송수단의 프로세서로 하여금, 상기 장애물이 상기 하나 이상의 포인트들에 의해 표현되는 장애물을 포함하도록 하는 동작들을 수행하게 하도록 구성되는, 비일시적 프로세서 판독가능 저장 매체.
  23. 제18 항에 있어서,
    저장된 프로세서-실행가능 소프트웨어 명령들은 상기 운송수단의 프로세서로 하여금, 상기 운송수단으로부터 상기 하나 이상의 포인트들 각각까지의 결정된 거리 및 방향에 기초하여 상기 하나 이상의 포인트들 각각에 대한 속도 제약을 결정하는 것이
    상기 운송수단으로부터 상기 하나 이상의 포인트들에 의해 표현되는 장애물까지 결정된 거리 및 방향에 기초하여 상기 하나 이상의 포인트들 각각에 대한 속도 제약을 결정하는 것을 포함하도록 하는 동작들을 수행하게 하도록 구성되는, 비일시적 프로세서 판독가능 저장 매체.
  24. 제18 항에 있어서,
    저장된 프로세서-실행가능 소프트웨어 명령들은 상기 운송수단의 프로세서로 하여금,
    상기 운송수단 내비게이션 명령이 방향 컴포넌트를 포함하고,
    상기 운송수단 내비게이션 명령에 기초하여 결정된 하나 이상의 속도 솔루션들로부터 상기 속도 솔루션을 선택하는 것이 상기 운송수단 내비게이션 명령의 방향 컴포넌트에 가장 근접하게 매칭하는 방향 컴포넌트를 갖는 상기 속도 솔루션을 선택하는 것을 포함하도록 하는 동작들을 수행하게 하도록 구성되는, 비일시적 프로세서 판독가능 저장 매체.
  25. 제18 항에 있어서,
    저장된 프로세서-실행가능 소프트웨어 명령들은 상기 운송수단의 프로세서로 하여금,
    상기 운송수단 내비게이션 명령이 속력 컴포넌트를 포함하고,
    상기 운송수단 내비게이션 명령에 기초하여 결정된 하나 이상의 속도 솔루션들로부터 상기 속도 솔루션을 선택하는 것이 상기 운송수단 내비게이션 명령의 속력 컴포넌트에 가장 근접하게 매칭하는 속력 컴포넌트를 갖는 상기 속도 솔루션을 선택하는 것을 포함하도록 하는 동작들을 수행하게 하도록 구성되는, 비일시적 프로세서 판독가능 저장 매체.
KR1020197013588A 2016-11-14 2017-09-29 운송수단 충돌 회피 KR102476681B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201662421551P 2016-11-14 2016-11-14
US62/421,551 2016-11-14
US15/607,975 2017-05-30
US15/607,975 US10289121B2 (en) 2016-11-14 2017-05-30 Vehicle collision avoidance
PCT/US2017/054291 WO2018089128A1 (en) 2016-11-14 2017-09-29 Vehicle collision avoidance

Publications (2)

Publication Number Publication Date
KR20190076985A KR20190076985A (ko) 2019-07-02
KR102476681B1 true KR102476681B1 (ko) 2022-12-09

Family

ID=62108476

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197013588A KR102476681B1 (ko) 2016-11-14 2017-09-29 운송수단 충돌 회피

Country Status (9)

Country Link
US (2) US10289121B2 (ko)
EP (1) EP3538966B1 (ko)
JP (1) JP7173966B2 (ko)
KR (1) KR102476681B1 (ko)
CN (1) CN109906416B (ko)
ES (1) ES2883847T3 (ko)
SG (1) SG11201902738PA (ko)
TW (1) TW201818368A (ko)
WO (1) WO2018089128A1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10517021B2 (en) 2016-06-30 2019-12-24 Evolve Cellular Inc. Long term evolution-primary WiFi (LTE-PW)
US10289121B2 (en) 2016-11-14 2019-05-14 Qualcomm Incorporated Vehicle collision avoidance
US11468310B2 (en) * 2018-03-07 2022-10-11 International Business Machines Corporation Constraining actions for reinforcement learning under safety requirements
US10649446B2 (en) * 2018-04-30 2020-05-12 Amazon Technologies, Inc. Techniques for conveyance device control
US11572079B2 (en) * 2019-04-25 2023-02-07 WeRide Corp. Apparatus and method for controlling velocity of autonomous driving vehicle, and storage medium
US11225228B2 (en) * 2020-03-11 2022-01-18 Baidu Usa Llc Method for enhancing in-path obstacle detection with safety redundancy autonomous system
WO2021261058A1 (ja) * 2020-06-26 2021-12-30 パナソニックIpマネジメント株式会社 情報処理方法、情報処理端末、及び、情報処理システム
CN113071482B (zh) * 2021-04-28 2023-03-21 江苏大学 一种基于通行时间区间的智能车辆防碰撞方法
US20230244249A1 (en) * 2022-02-01 2023-08-03 Lockheed Martin Corporation Collision prevention flight control mode

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060058931A1 (en) 2004-09-15 2006-03-16 Honeywell International Inc. Collision avoidance involving radar feedback
JP2015058890A (ja) 2013-09-20 2015-03-30 株式会社デンソー 走行軌道生成装置、および走行軌道生成プログラム
WO2016033795A1 (en) 2014-09-05 2016-03-10 SZ DJI Technology Co., Ltd. Velocity control for an unmanned aerial vehicle
US20160125746A1 (en) 2014-05-10 2016-05-05 Aurora Flight Sciences Corporation Dynamic collision-avoidance system and method
US20160304198A1 (en) 2014-12-03 2016-10-20 Google Inc. Systems and methods for reliable relative navigation and autonomous following between unmanned aerial vehicle and a target object

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6442711A (en) * 1987-08-10 1989-02-15 Nissan Motor Autonomous running vehicle controller
JP4043276B2 (ja) * 2002-04-24 2008-02-06 株式会社日立製作所 レーダ装置
US8126642B2 (en) * 2008-10-24 2012-02-28 Gray & Company, Inc. Control and systems for autonomously driven vehicles
IT1399129B1 (it) * 2010-04-01 2013-04-05 Paoletti Sistema di sorveglianza adattivo modulare per mezzi strutture persone
GB201100841D0 (en) 2011-01-18 2011-08-17 Bae Systems Plc Trajectory planning
CN102685516A (zh) * 2011-03-07 2012-09-19 李慧盈 立体视觉主动安全辅助驾驶方法
US8849483B2 (en) 2011-04-13 2014-09-30 California Institute Of Technology Target trailing with safe navigation with colregs for maritime autonomous surface vehicles
US9760092B2 (en) * 2012-03-16 2017-09-12 Waymo Llc Actively modifying a field of view of an autonomous vehicle in view of constraints
EP2845071B1 (en) 2012-04-30 2020-03-18 The Trustees Of The University Of Pennsylvania Three-dimensional manipulation of teams of quadrotors
JP6272347B2 (ja) * 2013-11-08 2018-01-31 株式会社日立製作所 自律走行車両、及び自律走行システム
CN104199034A (zh) * 2014-09-19 2014-12-10 黄国鹏 基于雷达传感器的汽车防撞方法和装置
CN105549597B (zh) * 2016-02-04 2018-06-26 同济大学 一种基于环境不确定性的无人车动态路径规划方法
CN105759836A (zh) * 2016-03-14 2016-07-13 武汉卓拔科技有限公司 一种基于3d摄像头的无人机避障方法及装置
US10289121B2 (en) 2016-11-14 2019-05-14 Qualcomm Incorporated Vehicle collision avoidance

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060058931A1 (en) 2004-09-15 2006-03-16 Honeywell International Inc. Collision avoidance involving radar feedback
JP2015058890A (ja) 2013-09-20 2015-03-30 株式会社デンソー 走行軌道生成装置、および走行軌道生成プログラム
US20160125746A1 (en) 2014-05-10 2016-05-05 Aurora Flight Sciences Corporation Dynamic collision-avoidance system and method
WO2016033795A1 (en) 2014-09-05 2016-03-10 SZ DJI Technology Co., Ltd. Velocity control for an unmanned aerial vehicle
US20160304198A1 (en) 2014-12-03 2016-10-20 Google Inc. Systems and methods for reliable relative navigation and autonomous following between unmanned aerial vehicle and a target object

Also Published As

Publication number Publication date
CN109906416A (zh) 2019-06-18
JP7173966B2 (ja) 2022-11-16
SG11201902738PA (en) 2019-05-30
JP2019537140A (ja) 2019-12-19
US11054835B2 (en) 2021-07-06
ES2883847T3 (es) 2021-12-09
US20180136669A1 (en) 2018-05-17
EP3538966B1 (en) 2021-07-21
US20190220041A1 (en) 2019-07-18
TW201818368A (zh) 2018-05-16
KR20190076985A (ko) 2019-07-02
WO2018089128A1 (en) 2018-05-17
CN109906416B (zh) 2022-04-26
BR112019009543A2 (pt) 2019-07-30
US10289121B2 (en) 2019-05-14
EP3538966A1 (en) 2019-09-18

Similar Documents

Publication Publication Date Title
KR102476681B1 (ko) 운송수단 충돌 회피
EP3735621B1 (en) Adjustable object avoidance proximity threshold based on classification of detected objects
US11086316B2 (en) Robotic vehicle insecure pay load detection and response
US20200117210A1 (en) Auto-Exploration Control of a Robotic Vehicle
US10149276B2 (en) Aerial robotic vehicle antenna switching
WO2019089149A1 (en) Managing operation of a package delivery robotic vehicle
US20180020081A1 (en) Managing a Parameter of an Unmanned Autonomous Vehicle Based on Manned Aviation Data
CN116830057A (zh) 无人机(uav)集群控制
US20200012293A1 (en) Robot and method of providing guidance service by the robot
US20200365041A1 (en) Identifying landing zones for landing of a robotic vehicle
Andert et al. Mapping and path planning in complex environments: An obstacle avoidance approach for an unmanned helicopter
CN114521248A (zh) 信息处理设备、信息处理方法和程序
AU2022262832A1 (en) System infrastructure for manned vertical take-off and landing aerial vehicles
KR102045262B1 (ko) 이동체 및 이동체의 장애물 회피 방법
EP3301532B1 (en) Method and vehicle traffic control system
WO2023060461A1 (en) Selecting a frontier goal for autonomous map building within a space
BR112019009543B1 (pt) Prevenção de colisão veicular

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant