KR20200042394A - 운송수단을 위한 궤적 계획기 - Google Patents

운송수단을 위한 궤적 계획기 Download PDF

Info

Publication number
KR20200042394A
KR20200042394A KR1020190112729A KR20190112729A KR20200042394A KR 20200042394 A KR20200042394 A KR 20200042394A KR 1020190112729 A KR1020190112729 A KR 1020190112729A KR 20190112729 A KR20190112729 A KR 20190112729A KR 20200042394 A KR20200042394 A KR 20200042394A
Authority
KR
South Korea
Prior art keywords
trajectory
point
air vehicle
trajectories
processor
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
KR1020190112729A
Other languages
English (en)
Other versions
KR102861523B1 (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 KR20200042394A publication Critical patent/KR20200042394A/ko
Application granted granted Critical
Publication of KR102861523B1 publication Critical patent/KR102861523B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • 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/12Target-seeking control
    • 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/60Intended control result
    • G05D1/617Safety or protection, e.g. defining protection zones around obstacles or avoiding hazards
    • G05D1/622Obstacle avoidance
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64CAEROPLANES; HELICOPTERS
    • B64C39/00Aircraft not otherwise provided for
    • B64C39/02Aircraft not otherwise provided for characterised by special use
    • B64C39/024Aircraft not otherwise provided for characterised by special use of the remote controlled vehicle type, i.e. RPV
    • 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/0011Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement
    • 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/0202Control of position or course in two dimensions specially adapted to 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/20Control system inputs
    • G05D1/22Command input arrangements
    • G05D1/221Remote-control arrangements
    • 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/40Control within particular dimensions
    • G05D1/46Control of position or course in three dimensions [3D]
    • 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/60Intended control result
    • G05D1/65Following a desired speed profile
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G5/00Traffic control systems for aircraft
    • G08G5/30Flight plan management
    • G08G5/32Flight plan management for flight plan preparation
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G5/00Traffic control systems for aircraft
    • G08G5/50Navigation or guidance aids
    • G08G5/55Navigation or guidance aids for a single aircraft
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G5/00Traffic control systems for aircraft
    • G08G5/50Navigation or guidance aids
    • G08G5/57Navigation or guidance aids for unmanned aircraft
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G5/00Traffic control systems for aircraft
    • G08G5/80Anti-collision systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U2201/00UAVs characterised by their flight controls
    • B64U2201/20Remote controls
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D2109/00Types of controlled vehicles
    • G05D2109/20Aircraft, e.g. drones

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Game Theory and Decision Science (AREA)
  • Medical Informatics (AREA)
  • Traffic Control Systems (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

본 개시는 공중 운송수단을 위한 장애물 감지 및 회피를 포함하는 궤적 및 루트(route) 계획 시스템 및 방법에 대한 것이다. 예를 들면, 공중 운송수단의 비행 제어 시스템은 시작점과 종점 사이의 장애물을 회피하지 않는 제1 경로를 찾기 위해 반복적 두빈스 경로를 사용하여 계산된 짧은 세그먼트들을 이용할 수 있는 궤적 계획기를 포함할 수 있다. 그리고 궤적 계획기는 시작점과 종점 사이의 알려지거나 감지된 장애물을 회피하는 궤적 또는 루트를 찾기 위해 제1 경로를 따르는 지점들을 씨드 지점들로 사용하는 RRT(rapidly exploring random tree) 알고리즘을 이용할 수 있다.

Description

운송수단을 위한 궤적 계획기{TRAJECTORY PLANNER FOR A VEHICLE}
본 개시는 일반적으로 운송수단 궤적 및 루트(route) 계획 시스템, 방법 및 장치에 관한 것이다. 더 구체적으로, 본 개시는 일반적으로 공중 운송수단(aerial vehicle)을 위한 운송수단 궤적 및 루트 계획 시스템, 방법 및 장치에 관한 것이다.
궤적 계획이란 운송수단이 공중 운송수단의 제약을 만족하면서 제 시간에 궤적을 따라갈 수 있도록 전역 중간점 경로(global waypoint path)를 따라가는 시간의 함수로서 공간을 통한 궤적을 생성하는 것이다. 현재의 궤적 계획 방법 및 시스템은 짧은 궤적들의 근사치를 기하학적 원호(arcs)와 선분(line segments)으로 함께 연결할 수 있다. 현재의 궤적 계획 방법 및 시스템은 빈번한 업데이트를 수행할 필요성에 시달리고 있으며, 계산에 너무 많은 시간이 소요될 수 있고, 장애물 회피 신뢰도 문제로 시달리고 있다.
본 개시는 공중 운송수단의 장애물 회피 궤적을 계획하기 위한 시스템 및 방법을 제공한다.
제1 양상(aspect)에 따르면, 비행 제어 시스템을 갖는 공중 운송수단을 비행 궤적을 따라 길안내(navigating) 하기 위한 시스템은: 센서 페이로드(payload); 및 센서 페이로드와 동작적으로 연결되고 비행 제어 시스템과 통신하는 프로세서를 포함하며, 프로세서는: 적어도 부분적으로 센서 페이로드로부터의 센서 데이터에 기초하여 복수의 경로 궤적 세그먼트를 계산하고; 일련의 경로 궤적 세그먼트를 통해 시간점과 종점을 연결함으로써 시작점과 종점 사이에 제1 궤적을 계산하고; 제1 궤적을 통해 복수의 씨드 중간점(seed waypoints)을 식별하고; 복수의 씨드 중간점을 이용하는 무작위 검색 알고리즘을 실행함으로써, 센서 페이로드에 의해 감지된 적어도 하나의 장애물을 회피하는 시작점과 종점 사이의 제2 궤적을 계산하고; 공중 운송수단이 제2 궤적을 따라 시작점에서 종점으로 운항하도록 지시하기 위해 길안내 명령들을 생성하고; 길안내 명령들을 비행 제어 시스템으로 전달하도록 구성된다.
어떤 양상에서는, 프로세서는 복수의 경로 궤적 세그먼트를 반복적으로 계산하도록 구성된다.
어떤 양상에서는, 프로세서는: (a) 공중 운송수단의 시작 위치, 시작 속도, 종료 위치 및 종료 속도를 입력으로 수신하는 단계; (b) 시작 속도와 종료 속도 중 큰 것으로부터 선회 반경(turning radius)을 계산하는 단계; (c) 적어도 부분적으로 선회 반경에 기초하여 경로 궤적 세그먼트를 계산하는 단계; (d) 적어도 부분적으로 제1 경로 및 공중 운송수단의 운동학적 제한들에 기초하여 달성 가능 속도를 계산하는 단계; 및 (e) 달성 가능 속도가 실질적으로 종료 속도와 동일할 때까지 단계 (b) 내지 (d)를 반복하는 단계로서, 차후의 반복에서 선회 반경은 달성 가능 속도를 이용하여 계산되는, 단계;를 포함하는 방법을 이용하여 복수의 경로 세그먼트를 계산하도록 구성된다.
어떤 양상에서는, 무작위 검색 알고리즘을 실행하는 단계는 RRT(rapidly exploring random tree) 알고리즘을 실행하는 단계를 포함한다.
어떤 양상에서는, RRT 알고리즘을 실행하는 단계는: (a) 장애물을 회피하면서 시작점을 씨드 중간점들 중 적어도 하나와 연결하는 단계; (b) 연결된 중간점이 시작점을 종점으로 연결하는지 확인하는 단계; (c) 장애물을 회피하면서 종점과 씨드 중간점들 중 적어도 하나를 연결하는 단계; (d) 무작위 중간점을 추가하는 단계; (e) 장애물을 회피하면서 복수의 씨드 중간점들 중 적어도 하나를 무작위 지점에 연결하는 단계; (f) 연결된 중간점이 시작점을 종점으로 연결하는지 확인하는 단계; (g) 연결된 중간점이 시작점을 종점으로 연결할 때까지 단계 (d) 내지 (f)를 반복하는 단계;를 포함한다.
어떤 양상에서는, 프로세서는 궤적의 길이를 줄이기 위해 제2 궤적을 스무딩(smooth)하도록 구성된다.
어떤 양상에서는, 센서 페이로드는 장애물 감지 시스템에 연결되며, 제2 궤적은 장애물 감지 시스템에 의해 감지된 장애물을 회피하도록 식별된다.
어떤 양상에서는, 센서 페이로드는 라이다(LIDAR), 레이더(Radar), 반향정위(echolocation) 시스템 또는 광학 센서 중 적어도 하나를 포함한다.
제2 양상에 따르면, 비행 제어 시스템을 갖는 공중 운송수단을 비행 궤적을 따라 길안내 하기 위한 방법은: 프로세서를 통해, 적어도 공중 운송수단의 제1 속도를 반영하는 공중 운송수단에 연결된 센서 페이로드로부터의 센서 데이터에 적어도 부분적으로 기초하여 복수의 궤적 세그먼트 가능성들을 계산하는 단계; 프로세서를 통해, 일련의 궤적 세그먼트 가능성들을 통해 시작점과 종점을 연결함으로써 시작점과 종점 사이의 제1 궤적을 계산하는 단계; 프로세서를 통해, 제1 궤적을 통해 복수의 씨드 중간점을 결정하는 단계; 프로세서를 통해, 복수의 씨드 중간점을 이용하는 무작위 검색 알고리즘을 실행함으로써 적어도 하나의 장애물을 회피하는 시작점과 종점 사이의 제2 궤적을 계산하는 단계; 프로세서를 통해, 제2 궤적을 따라 공중 운송수단이 시작점에서 종점으로 운항하도록 지시하기 위해 길안내 명령들을 생성하는 단계; 및 길안내 명령들을 비행 제어 시스템으로 전달하는 단계;를 포함하고, 프로세서는 센서 페이로드와 동작적으로 연결되고 비행 제어 시스템과 통신한다.
어떤 양상에서는, 복수의 궤적 세그먼트 가능성들을 계산하는 단계는: (a) 공중 운송수단의 시작 위치, 시작 속도, 종료 위치 및 종료 속도를 입력으로 수신하는 단계; (b) 시작 속도 및 종료 속도 중 큰 것으로부터 선회 반경을 계산하는 단계; (c) 적어도 부분적으로 선회 반경에 기초하여 경로 궤적 세그먼트를 계산하는 단계; (d) 적어도 부분적으로 제1 경로 및 공중 운송수단의 운동학적 제한들에 기초하여 달성 가능 속도를 계산하는 단계; 및 (e) 달성 가능 속도가 실질적으로 종료 속도와 동일할 때까지 단계 b 내지 단계 d를 반복하는 단계로서, 차후의 반복에서 선회 반경은 달성 가능 속도를 이용하여 계산되는, 단계;를 포함한다.
어떤 양상에서는, 무작위 검색 알고리즘을 실행하는 단계는: (a) 장애물들을 회피하면서 시작점과 씨드 중간점들 중 적어도 하나를 연결하는 단계; (b) 연결된 중간점들이 시작점을 종점으로 연결하는지 확인하는 단계; (c) 장애물들을 회피하면서 종점과 씨드 중간점들 중 적어도 하나를 연결하는 단계; (d) 무작위 중간점을 추가하는 단계; (e) 장애물들을 회피하면서 복수의 씨드 중간점들 중 적어도 하나를 무작위 지점에 연결하는 단계; (f) 연결된 중간점들이 시작점을 종점으로 연결하는지 확인하는 단계; (g) 연결된 중간점들이 시작점을 종점으로 연결할 때까지 단계 d 내지 f를 반복하는 단계;를 포함한다.
어떤 양상에서는, 복수의 궤적 세그먼트 가능성들을 계산하는 단계는: (a) 공중 운송수단의 시작 위치, 시작 속도, 종료 위치 및 종료 속도를 입력으로 수신하는 단계; (b) 시작 속도 및 종료 속도 중 큰 것으로부터 선회 반경을 계산하는 단계; (c) 적어도 부분적으로 선회 반경에 기초하여 경로 궤적 세그먼트를 계산하는 단계; (d) 적어도 부분적으로 제1 경로 및 공중 운송수단의 운동학적 제한들에 기초하여 달성 가능 속도를 계산하는 단계; 및 (e) 달성 가능 속도가 실질적으로 종료 속도와 동일하거나 미리 정해진 최대 반복 회수가 도달될 때까지 단계 b 내지 단계 d를 반복하는 단계를 포함하며, 차후의 반복에서 선회 반경은 달성 가능 속도를 이용하여 계산된다.
어떤 양상에서는, 무작위 검색 알고리즘을 실행하는 단계는: (a) 장애물들을 회피하면서 시작점과 씨드 중간점들 중 적어도 하나를 연결하는 단계; (b) 연결된 중간점들이 시작점을 종점으로 연결하는지 확인하는 단계; (c) 장애물들을 회피하면서 종점과 씨드 중간점들 중 적어도 하나를 연결하는 단계; (d) 무작위 중간점을 추가하는 단계; (e) 장애물들을 회피하면서 복수의 씨드 중간점들 중 적어도 하나를 무작위 지점에 연결하는 단계; (f) 연결된 중간점들이 시작점을 종점으로 연결하는지 확인하는 단계; (g) 연결된 중간점들이 시작점을 종점으로 연결하거나 미리 정해진 최대 반복 회수가 도달될 때까지 단계 d 내지 f를 반복하는 단계;를 포함한다.
어떤 양상에서는, 방법은 장애물 회피 궤적을 줄이기 위해 스무딩 알고리즘을 실행하는 단계를 더 포함한다.
어떤 양상에서는, 복수의 궤적 세그먼트 가능성들은 장애물 회피 궤적 내에서 공중 운송수단에 의해 가능한 가속 및 감속을 고려한다(account for).
어떤 양상에서는, 방법은 적어도 하나의 장애물을 감지하는 단계를 더 포함하며, 제2 궤적은 감지된 적어도 하나의 장애물을 회피한다.
제3 양상에 따르면, 비행 제어 시스템을 갖는 공중 운송수단을 비행 궤적을 따라 길안내 하기 위한 방법은:
비행 제어 시스템과 통신하는 프로세서를 통해, 복수의 궤적 세그먼트 가능성들을 계산하는 단계로서: (a) 공중 운송수단의 시작 위치, 시작 속도, 종료 위치 및 종료 속도를 입력으로 수신하는 단계; (b) 시작 속도 및 종료 속도 중 큰 것으로부터 선회 반경을 계산하는 단계; (c) 적어도 부분적으로 선회 반경에 기초하여 경로 궤적 세그먼트를 계산하는 단계; (d) 적어도 부분적으로 제1 경로 및 공중 운송수단의 운동학적 제한들에 기초하여 달성 가능 속도를 계산하는 단계; 및 (e) 달성 가능 속도가 실질적으로 종료 속도와 동일할 때까지 단계 (b) 내지 단계 (d)를 반복하는 단계로서, 차후의 반복에서 선회 반경은 달성 가능 속도를 이용하여 계산되는, 단계;를 수행함으로써 상기 가능성들을 계산하는 단계; 프로세서를 통해, 복수의 궤적 세그먼트 가능성들을 이용하는 무작위 검색 알고리즘을 실행함으로써 시작 위치와 종료 위치 사이의 장애물 회피 궤적을 계산하는 단계; 프로세서를 통해, 장애물 회피 궤적을 따라 공중 운송수단이 시작 위치에서 종료 위치로 운항하도록 지시하기 위해 길안내 명령들을 생성하는 단계; 및 길안내 명령들을 비행 제어 시스템으로 전달하는 단계;를 포함한다.
어떤 양상에서는, 무작위 검색 알고리즘을 실행하는 단계는 RRT(rapidly exploring random tree) 알고리즘을 실행하는 단계를 포함한다.
어떤 양상에서는, RRT 알고리즘을 실행하는 단계는: (a) 장애물들을 회피하면서 시작점과 씨드 중간점들 중 적어도 하나를 연결하는 단계; (b) 연결된 중간점들이 시작점을 종점으로 연결하는지 확인하는 단계; (c) 장애물들을 회피하면서 종점과 씨드 중간점들 중 적어도 하나를 연결하는 단계; (d) 무작위 중간점을 추가하는 단계; (e) 장애물들을 회피하면서 복수의 씨드 중간점들 중 적어도 하나를 무작위 지점에 연결하는 단계; (f) 연결된 중간점들이 시작점을 종점으로 연결하는지 확인하는 단계; (g) 연결된 중간점들이 시작점을 종점으로 연결할 때까지 단계 (d) 내지 (f)를 반복하는 단계;를 포함한다.
어떤 양상에서는, 프로세서는 궤적의 길이를 줄이기 위해 장애물 회피 궤적을 스무딩하도록 구성된다.
유사한 참조번호가 유사한 구조체를 나타내는 첨부된 도면들에 도시된 바와 같이 본 개시에서 기술되는 장치, 시스템 및 방법의 앞서 언급된, 그리고 다른 목적, 특징 및 장점들은 특정 실시예들의 다음의 설명으로부터 명백해질 것이다. 도면들은 반드시 일정한 비율인 것은 아니며, 대신 본 개시에 기술된 장치, 시스템 및 방법의 원리들을 설명하는 것에 주안점이 있다.
도 1은 장애물 회피를 포함하는 궤적 계획을 위한 예시 환경을 나타낸다.
도 2a는 궤적 계획 시스템을 갖는 제1 예시 공중 운송수단을 나타낸다.
도 2b는 궤적 계획 시스템을 갖는 제2 예시 공중 운송수단을 나타낸다.
도 2c는 공중 운송수단을 위한 궤적 계획기를 포함하는 비행 제어 시스템의 블록도를 나타낸다.
도 3은 공중 운송수단을 위해 중간점 경로를 따라 계산된 최적의 예시 궤적을 나타내며, 계산된 궤적은 중간점 경로에서 장애물을 회피한다.
도 4는 반복적인 두빈스 경로 알고리즘(iterative Dubins path algorithm)의 몇몇 반복들의 예시를 나타낸다.
도 5a는 장애물을 회피하지 않고 궤적을 계산하는 억지 접근 알고리즘(brute force algorithm)의 예시를 나타낸다.
도 5b는 초기(initial) 궤적 세그먼트들을 찾기 위해 이용되는 두번째 씨드 중간점들을 나타낸다.
도 5c는 장애물을 회피하는 궤적을 찾기 위한 RRT(rapidly exploring random tree) 알고리즘의 예시 실행을 나타낸다.
도 5d는 스무딩을 실행한 이후 계산된 궤적의 예시를 나타낸다.
도 6a는 공중 운송수단을 위한 예시 궤적 계획 방법의 흐름도를 나타낸다.
도 6b는 두빈스 경로를 반복적으로 계산하기 위한 예시 방법의 흐름도를 나타낸다.
도 6c는 공중 운송수단을 위한 궤적을 계산하기 위해 RRT 알고리즘을 이용하기 위한 예시 방법의 흐름도를 나타낸다.
본 개시의 바람직한 실시예들은 첨부된 도면들을 참조하여 아래에 설명될 수 있다. 다음의 설명에서, 잘 알려진 기능들 또는 구성들은 불필요한 세부 사항으로 본 개시를 불명료하게 할 수 있기 때문에 상세히 설명되지 않는다. 도면에 있는 구성요소들은 반드시 일정한 비율인 것은 아니며, 대신 본 실시예들의 원리를 명확히 설명하는 것에 주안점이 있다. 예를 들면, 요소의 크기는 설명의 명확성과 편의를 위해 과장될 수 있다. 더불어, 가능한 경우 동일한 참조번호는 도면들에 걸쳐 실시예의 동일하거나 유사한 요소를 나타내기 위해 사용된다. 다음의 설명에서, 잘 알려진 기능들 또는 구성들은 불필요한 세부 사항으로 본 개시를 불명료하게 할 수 있기 때문에 상세히 설명되지 않는다. 명세서에서 어떠한 언어도 임의의 청구되지 않은 요소를 실시예들의 실시에 필수적인 것으로서 나타내는 것으로 해석되어서는 안 된다.
명시적으로 다르게 서술되거나 문맥으로부터 명백하지 않는 한, 단수로 아이템(item)들을 참조하는 것은 복수의 아이템들을 포함하는 것으로 해석되어야 하며 그 반대도 마찬가지이다. 문법적인 접속사들은 명시적으로 다르게 서술되거나 문맥으로부터 명백하지 않는 한 결합된 절들(clauses), 문장들, 단어들, 그리고 이와 유사한 것들의 임의의 및 모든 이접적(disjunctive), 접합적(conjunctive) 조합을 표현하도록 의도된 것이다. 이하의 설명에서, "제 1 ", "제 2 ", "상부(top)", "하부(bottom)", "측면(side)", "전면(front)", "후면(back)" 및 이와 유사한 용어들은 편의를 위한 단어들이며, 한정하는 용어들로서 해석되어서는 안 된다. 또한, 본 명세서에 제공된 임의의 예시들 및 모든 예시들 또는 예시적인 언어(예를 들어, "~와 같은" 또는 이와 유사한 것)의 사용은 단지 실시예들을 보다 잘 나타내기 위한 것이며, 실시예들의 범위를 제한하지 않는다. 명세서에서 어떠한 언어도 임의의 청구되지 않은 요소를 실시예들의 실시에 필수적인 것으로서 나타내는 것으로 해석되어서는 안 된다. 본 개시를 위해, 다음의 용어들 및 정의들이 적용될 것이다.
용어들 "공중 운송수단(aerial vehicle)" 및 "항공기(aircraft)"는 고정익(fixed wing), 회전익(rotary wing), 다중로터(multirotor) VTOL(수직 이착륙) 항공기 등에 관계없이, 전통적인 항공기 및 VTOL 항공기를 포함하여 비행이 가능한 기계를 지칭하되 이에 국한되지 않는다.
수치를 수반할 때, "약" 및 "대략" 또는 이와 유사한 단어들은, 의도된 목적을 위해 순조롭게 작동시키도록 본 기술분야의 통상의 기술자에 의해 이해되는 편차를 나타내는 것으로 해석되어야 한다. 값의 범위들 및/또는 수치 값들은 단지 예시로서 본 개시에 제공되며, 설명된 실시예들의 범위에 대한 제한을 구성하지 않는다. 본 개시에서 값의 범위들을 인용하는 것은 한정의 의도는 아니며, 대신 본 개시에 달리 명시되지 않는 한 범위 내에 있는 임의의 및 모든 값들을 개별적으로 지칭하며, 그러한 범위 내의 각 개별 값은 그것이 본 개시에서 개별적으로 인용된 것처럼 명세서에 통합된다.
“및/또는”이라는 용어는 “및/또는”에 의해 결합된 목록에 있는 아이템들의 임의의 하나 이상을 의미한다. 예를 들면, “x 및/또는 y”는 3개의 요소를 갖는 집합 {(x), (y), (x,y)}의 임의의 요소를 의미한다. 다시 말해, “x 및/또는 y”는 “x 및 y 중 하나 또는 둘 모두”를 의미한다. 다른 예시로서, “x, y 및/또는 z”는 7개의 요소를 갖는 집합 {(x), (y), (z), (x,y), (x,z), (y,z), (x,y,z)}의 임의의 요소를 의미한다. 다시 말해, “x, y 및/또는 z”는 “x, y 및 z 중 하나 이상”을 의미한다.
"회로(circuit)" 및 "회로망(circuitry)"이라는 용어들은 물리적 전자부품들(예를 들면, 하드웨어)과 하드웨어를 구성하고, 하드웨어에 의해 실행되고 및/또는 다른 방식으로 하드웨어와 연관이 있을 수 있는 임의의 소프트웨어 및/또는 펌웨어("코드")를 지칭한다. 본 개시에서 사용될 때, 예를 들어 특정한 프로세서 및 메모리는 한 줄 이상의 코드의 제 1 세트를 실행할 때 제 1 "회로"를 포함할 수 있고, 한 줄 이상의 코드의 제 2 세트를 실행할 때 제 2 "회로"를 포함할 수 있다. 본 개시에서 사용될 때, 어떤 기능의 수행이 (예를 들면, 사용자가 설정 가능한 세팅, 공장 트림(factory trim) 등에 의해) 디세이블되어 있는지(disabled) 또는 이네이블(enabled) 되어 있지 않은지 여부에 관계없이, 회로망이 그 기능을 수행하기 위하여 필요한 하드웨어 및 코드(만일 필요하다면)를 포함할 때마다 회로망은 그 기능을 수행하도록 "동작 가능하다(operable)".
본 개시에서 사용되는 용어들 "전달하다(communicate)" 및 "전달하는(communicating)"은 소스(source)로부터 목적지(destination)까지 데이터 또는 정보를 전송하는 것 또는 다른 방식으로 운반하는 것(conveying) 및/또는 목적지까지 운반되도록 통신 매체, 시스템, 채널, 네트워크, 장치, 전선, 케이블, 섬유, 회로 및/또는 링크(link)에 데이터 또는 정보를 넘겨주는 것(delivering) 모두를 지칭한다.
본 개시에서 사용되는 “컴퓨터”라는 용어는 일련의 산술 또는 논리 동작들을 순차적이고 자동적으로 실행하도록 디자인된 프로그래밍 가능한(programmable) 장치를 지칭하며, 개인용 컴퓨터(personal computers)(예를 들어, 노트북 및 데스크탑 컴퓨터), 손에 들고 쓰는(handheld), 프로세서 기반의 장치(예를 들어, 스마트폰, 태블릿 컴퓨터, PDA(personal digital assistant) 등) 및 프로세서(또는 마이크로프로세서)를 구비한 임의의 다른 전자 장치를 포함하며 이에 한정되지 않는다.
본 개시에서 사용되는 “연결된”, “에 연결된” 및 “와 연결된”이라는 용어는 각각 둘 이상의 장치, 기구, 파일, 회로, 요소, 기능, 동작, 프로세스, 프로그램, 매체, 구성요소, 네트워크, 시스템, 서브시스템(subsystem) 및/또는 수단 중에서 또는 그들 사이의 관계를 의미하며, (ⅰ) 직접 또는 하나 이상의 다른 장치, 기구, 파일, 회로, 요소, 기능, 동작, 프로세스, 프로그램, 매체, 구성요소, 네트워크, 시스템, 서브시스템 또는 수단을 통해서든 관계없이, 연결, (ⅱ) 직접 또는 하나 이상의 다른 장치, 기구, 파일, 회로, 요소, 기능, 동작, 프로세스, 프로그램, 매체, 구성요소, 네트워크, 시스템, 서브시스템 또는 수단을 통해서든 관계없이, 통신 관계 및/또는 (ⅲ) 임의의 하나 이상의 다른 장치, 기구, 파일, 회로, 요소, 기능, 동작, 프로세스, 프로그램, 매체, 구성요소, 네트워크, 시스템, 서브시스템 또는 수단의 동작이 이들 중 임의의 하나 이상의 다른 것의 동작에 전부 또는 부분적으로 의존하는 기능적 관계 중 임의의 하나 이상을 구성한다.
본 개시에서 사용되는 “데이터”라는 용어는 영구적 또는 일시적이든, 가시적(visible), 가청(audible), 전기적, 자기적, 전자기적 또는 다른 방식으로 드러나든 관계없이, 정보를 나타내는 임의의 표시(indicia), 신호, 마크(marks), 상징, 도메인(domains), 상징 세트(symbol sets), 표현 및 임의의 다른 물리적 형태 또는 형태들을 의미한다. “데이터”라는 용어는 하나의 물리적 형태의 미리 정해진 정보를 나타내기 위해 이용되며 다른 물리적 형태 또는 형태들의 대응하는 정보의 임의의 및 모든 표현들을 아우른다.
본 개시에서 사용되는 “데이터베이스”라는 용어는 관련된 데이터의 조직화된 단체를 의미하며, 데이터 또는 이들의 조직화된 단체가 표현된 방식에 무관하다. 예를 들면, 관련 데이터의 조직화된 단체는 표, 지도, 그리드(grid), 패킷(packet), 데이터그램(datagram), 프레임, 파일, 이메일, 메시지, 문서, 보고서, 목록 또는 임의의 다른 형태로 제시된 데이터 중 하나 이상의 형태를 가질 수 있다.
“예시적인” 및 “예시”라는 용어는 “예시, 사례 또는 실례로서 기능”하는 것을 의미한다. 본 개시에 기술된 실시예들은 한정적이지 않으며, 오히려 예시적일 뿐이다. 기술된 실시예들은 반드시 다른 실시예들에 비해 바람직하거나 유리한 것으로 해석되지는 않는다는 것이 이해되어야 한다. 또한, “발명의 실시예들”, “실시예들” 또는 “발명”은 발명의 모든 실시예들이 논의되는 특징, 장점 또는 동작 모드를 포함할 것을 요구하지는 않는다.
“메모리 장치”라는 용어는 프로세서에 의한 사용을 위해 정보를 저장하기 위한 컴퓨터 하드웨어 또는 회로망을 의미한다. 메모리 장치는 예를 들면 읽기 전용 메모리(ROM), 임의 접근 메모리(RAM), 캐시(cache) 메모리, 컴팩트 디스크 읽기 전용 메모리(CDROM), 전자 광학 메모리, 자기 광학 메모리, 프로그래밍 가능한 읽기 전용 메모리(PROM), 소거 가능하고 프로그래밍 가능한 읽기 전용 메모리(EPROM), 전기적 소거 가능하고 프로그래밍 가능한 읽기 전용 메모리(EEPROM), 컴퓨터 판독가능 매체 또는 이와 유사한 것과 같이, 임의의 적합한 종류의 컴퓨터 메모리 또는 임의의 다른 종류의 전자 저장 매체일 수 있다.
본 개시에서 사용되는 “네트워크”라는 용어는 인터넷을 포함하여 모든 종류의 네트워크와 인터네트워크(inter-networks)를 모두 포함하며, 임의의 특정한 네트워크 또는 인터네트워크에 국한되지 않는다.
본 개시에서 사용되는 “프로세서"라는 용어는 하드웨어, 실재적으로 구현된 소프트웨어 또는 둘 모두에서 구현되었는지 여부 그리고 프로그래밍 가능한지 여부와 상관없이, 처리 장치들, 기구들, 프로그램들, 회로들, 구성요소들, 시스템들 및 서브시스템들을 지칭한다. 본 개시에서 사용된 “프로세서”라는 용어는 하나 이상의 컴퓨터들, 하드와이어드 회로들(hardwired circuits), 신호 수정 장치들(signal-modifying devices)과 시스템들, 시스템들을 제어하기 위한 장치들 및 기계들, 중앙 처리 유닛들(central processing units), 프로그래밍 가능한 장치들과 시스템들, 필드-프로그래밍 가능한 게이트 어레이들(field-programmable gate arrays), 주문형 집적 회로들(application-specific integrated circuits), 칩 상의 시스템들(systems on a chip), 이산 소자들(discrete elements) 및/또는 회로들을 포함하는 시스템들, 상태 머신들(state machines), 가상 머신들(virtual machines) 및 데이터 프로세서들을 포함하지만 이에 한정되지 않는다.
본 개시는 운송수단(예를 들면, 공중 운송수단)에서 궤적 및 루트 계획을 제공하기 위한 시스템 및 방법과 관련된 것이다. 궤적 계획은 일반적으로 주어진 공간(예를 들면, 공기 공간)을 통한 궤적을 식별/생성하는 프로세스를 나타낸다. 궤적은 공중 운송수단의 성능 제약을 만족하면서 두 지점(예를 들면, 시작점 및 목적 장소 또는 중간점(waypoint)) 사이에서 전역 중간점 경로를 따라가는 시간의 함수로서 결정될 수 있다. 궤적 계획 시스템 및 방법은 환경 내 임의의 장애물을 동적으로 회피할 수도 있다.
궤적 계획 시스템 및 방법은, 통합된/기존 비행 제어 시스템인지 무관하게, 공중 운송수단의 비행 제어 시스템 내의 기능적 시스템으로 또는 통합/기존 비행 제어 시스템과 통신하는 부가물(add-on)로서 촉진될 수 있다. 공중 운송수단의 비행 제어 시스템은 또한 예를 들면 장애물 감지 시스템, 내비게이션시스템(자율적일 수 있음), 장소 추적 시스템 등과 같은 시스템들을 포함할 수 있다. 장애물 감지는 그 중에서도 청각적 기법(예를 들면, 반향정위 센서), 시각적 기법(예를 들면, 카메라, 라이다(LiDAR) 등) 또는 이들의 조합을 이용하여 하나 이상의 충돌 위협 또는 장애물(예를 들면, 고정된 및/또는 이동하는 비협조적인 타겟)을 감지함으로써 용이해 질 수 있다. 충돌 위협을 줄 수 있는 환경 내 장애물의 예시는 새, 사람, 다른 운송수단, 구조체(예를 들면, 건물, 문, 탑 등), 경엽(foliage)(예를 들면, 나무, 관목 등) 및 이와 유사한 것을 포함하며 이에 제한되지 않는다.
궤적 계획 방법은 기하학적 원호와 선분을 통해 짧은 궤적들의 근사치를 함께 연결시킬 수 있다. 여기에 개시된 바와 같이, 공중 운송수단의 위치 및 속도를 고려하는 궤적 계획 시스템 및 방법은 동적 제약을 갖는 항공기에 유용하다. 궤적 계획 방법들은 하나 이상의 궤적 카테고리로 분류될 수 있으며, 카테고리들은 그 중에서도 억지 접근 확인(brute force checking), 기울기 강하(gradient descent) 및 RRT(rapidly exploring random tree)를 포함한다.
억지 접근 궤적 방법은 시작점에서 짧은 거리만큼 앞에 있는 곳까지 가능한 궤적들을 고려하는 단계, 최소 비용으로 공중 운송수단을 목적지를 향해 이동시키는 궤적 세그먼트를 식별하는 단계, 그 세그먼트를 선택하는 단계를 수반하며 세그먼트의 끝에서 이 프로세스를 반복한다. 억지 접근 궤적 싸이클(cycle)은 세그먼트가 목적지(예를 들면, 목적지 장소 또는 중간점)에 도착할 때까지 계속된다. 억지 접근 방법은 빠르고 실현 가능한 궤적들을 생성할 수 있지만, 이들은 동적으로 쉽게 환경 내 장애물을 회피할 수 없다.
기울기 강하 궤적 방법은 궤적에서 추정치를 가지고 시작하는 것을 수반하며, 기울기 강하에 대한 수학적 모델들을 이용하여 여전히 목적지에 도착하면서도 운송수단의 역량을 포함하는 물리적 제약을 넘지 않는 궤적을 계산한다. 원래의 추측들은 제약을 만족하고 장애물을 회피하는 해법에 점차 접근한다. 그러나, 궤적 계획을 위한 기울기 강하는 가능한 궤적이 있을 때에도 지속적으로 궤적을 식별하지 않을 수 있다. 따라서, 기울기 강하는 실제로는 항상 충분히 믿을 만하지 않으며, 심지어 양성(benign) 환경(예를 들면, 비교적 장애물이 없는 환경)에서도 그러하다.
RRT 궤적 방법은 환경 내 무작위로 추출된 상태들과 함께 시작 상태와 종료 상태를 연결하기 위해 시도한다. 충분한 시간이 주어진다면, RRT는 최적의 해법에 접근하는 것으로 나타났다(해법이 있다면). 일반적으로 RRT는 실제로 좋은 성능을 갖는 반면, 궤적 업데이트가 제한된 시간에 빈번한 업데이트를 필요로 할 경우 수용 가능한 궤적들을 생성하기 위해 너무 많은 시간을 소모할 수 있다.
그러나, 본 개시는 현재의 최신식 궤적 계획을 더 개선하는 궤적 계획 해법을 제공한다. 일 양상에서는, 궤적 계획 해법은 복잡한 궤적들을 생성하는 계산 시간을 줄이기 위해 두빈스(Dubins) 경로 이론과 같은 경로 이론을 이용할 수 있다. 전형적으로 두빈스 경로는 경로의 곡률에 대한 제약과 경로에 미리 규정된(prescribed) 초기 및 최종 접선들(tangents)을 가지고 2차원 유클리드 평면(즉, x-y 평면)에서 두 지점을 연결하는 가장 짧은 곡선을 나타낸다. 두빈스 경로에서, 운송수단은 또한 전방으로만 이동하는 것으로 가정될 수도 있다.
개시된 궤적 계획 해법은 속도 변화와 함께 발생하는 선회 반경(turning radius) 변화에 대해 반복하는 두빈스 경로를 통합하는 단계를 더 수반할 수 있다. 궤적 계획 해법은 RRT 알고리즘에 “씨드” 궤적들을 제공하기 위해 억지 접근 방법을 이용하여 초기 궤적을 생성할 수 있고, 그러면 RRT 알고리즘은 씨드 궤적들을 연결하거나 연결하려고 시도한다. 다른 양상들에서는 RRT*, RRT#, A*, D*, 다이크스트라(Dijkstra's) 알고리즘 또는 무작위 트리 신속 탐색과 같이 RRT를 대신하여 다른 목표 검색 알고리즘들이 이용될 수 있다. 또한, 몇몇 양상에서는 가능한 원호 길이와 짧은 궤적 세그먼트를 찾기 위해 반복적 두빈스 경로 알고리즘 외 다른 방법들이 이용될 수 있다. 몇몇 양상에서 RRT 알고리즘 또는 다른 목표 검색 알고리즘은 씨드 궤적들을 생성하기 위해 먼저 억지 접근 방법을 이용하지 않고 반복적 두빈스 경로 알고리즘에 의해 계산된 궤적들을 이용할 수 있다. RRT 및 RRT* 알고리즘은 세르탁 캐러맨(Sertac Karaman)과 에밀리오 프라졸리(Emilio Frazzoli)의 국제로봇연구 저널(2010) 논문 Incremental Sampling-based Algorithms for Optimal Motion Planning에 의해 더 자세하게 설명된다.
개시된 궤적 계획 해법들은 두빈스 경로를 통한 복잡한 궤적들을 생성하기 위한 계산 시간의 감소, 씨드 궤적들의 이용을 통한 RRT 알고리즘을 위한 계산 시간의 감소, 씨드 궤적들의 이용을 통한 RRT 해법으로부터의 최적화된 결과 및 믿을 수 있는 장애물의 회피와 같은 다수의 이점들을 제공한다. 본 개시의 일 양상에서 궤적 계획기는 반복적 두빈스 경로를 이용한다.
기본 두빈스 경로는 선회 반경이 시간이 지남에 따라 변하지 않는다는 가정 하에, 하나의 상태에서 다른 상태까지 경로를 결정하기 위해 단일 선회 반경을 이용한다. 그러나, 공중 운송수단을 위한 선회 반경은 속도 및 좌표화된 선회 가정에 의해 결정된다. 공중 운송수단에 대한 속도는 변화할 수 있기 때문에 선회 반경은 변화할 수 있고, 따라서 두빈스 경로의 선회 반경을 변화시킨다. 이륙에서 착륙까지 궤적들을 생성하는 개시된 궤적 계획기의 경우, 가속이 속도를 변화시킬 것이며 따라서 임의의 주어진 시간에서 선회 반경에 영향을 미칠 것이다. 따라서, 변화하는 속도(및 따라서 변화하는 선회 반경)를 다루기(account for) 위해서 궤적 계획기는 반복적 두빈스 경로 알고리즘을 이용할 수 있다.
반복적 두빈스 경로 알고리즘은 입력으로서 시작 위치, 종료 위치 및 그 위치들에서 연관된 진로들 및 속도들과 함께 시작한다. 이러한 입력들로부터, 반복적 두빈스 경로 알고리즘은: 1) 시작 및 종료 상태의 속도들 중 더 큰 속도로부터 선회 반경을 계산하고; 2) 기본 두빈스 경로를 계산하고; 3) 공중 운송수단의 운동학적 제약들에 기초하여 명령된 속도와 가장 가까운 달성 가능 속도(achievable velocity)를 계산하고; 4) 단계 3)에서 계산된 달성 가능 속도에 기초하여 선회 반경을 계산하고; 5) 시작 및 종료 선회 반경을 이용하여 두빈스 경로를 계산하고; 6) 단계 3)에서 계산된 속도가 반복들 사이에서 변하지 않을 때까지 또는 미리 정해진 최대 반복 회수 동안 단계 3) 내지 5)를 반복한다. 반복적 두빈스 경로 방법은 비행 중인 공중 운송수단의 경로와 흡사한 궤적의 근사치를 생성하기 위해 이용될 수 있다.
두빈스 경로 반복들은 억지 접근 방법이 목적 종점까지의 간단한 궤적을 생성하기 위해 이용할 수 있는 짧은 궤적들을 생성한다. 억지 접근 알고리즘은 중간점 경로를 짧은 세그먼트들로 나누고, 짧은 두빈스 경로 궤적들에 의해 그 세그먼트들을 함께 연결한다. 예를 들면, 억지 접근 궤적은 씨드 중간점들로서 연결하기 위해 수정 RRT 알고리즘(modified RRT algorithm)에 대한 대표 궤적으로서 이용될 수 있다. 일 예시에서, 수정 RRT 알고리즘은: 1) 초기 상태를 씨드 중간점들에 연결(또는 연결하려고 시도)하고; 2) 중간점들이 목적 종점으로 가는지 확인하고(만약 중간점들이 목적 종점까지 가면 제1 해법이 식별되고, 그렇지 않다면 알고리즘은 씨드들의 끝을 제1 해법의 목적지로 연결(또는 연결하려고 시도)한다); 3) 무작위 상태를 고르고 RRT 알고리즘에 따라 트리(tree)에 추가하고; 4) 무작위 지점을 씨드 중간점들로 연결(또는 연결하려고 시도)하고; 5) 중간점들이 목적 종점으로 가는지 확인하고(중간점들이 목적 종점으로 가면 해법은 결정되고, 그렇지 않다면 알고리즘은 씨드들의 끝을 해법의 목적지로 연결(또는 연결하려고 시도)한다); 6) 해법이 결정되거나 최대 반복 회수가 도달되거나 해법을 찾은 이후 최소 반복 회수가 도달될 때까지 단계 3) 내지 5)를 반복하고; 7) 궤적의 길이를 줄이기 위해 스무딩(smoothing)을 실행한다.
억지 접근 방법에 의해 계산된 씨드 중간점들은 수정 RRT가 효율적으로 목적 종점까지의 합리적인 경로를 찾는 것을 돕는다. 억지 접근 알고리즘에 의해 계산된 씨드 중간점들이 장애물을 회피하지 않을 수도 있지만, RRT는 장애물 주위에서 기동(maneuver)하기 위해 경로의 구획들(sections)을 찾을 수 있고 장애물이 회피된 이후 씨드 중간점들로 다시 연결할 수 있다. 기술된 방법과 시스템들이 비록 궤적 계획을 나타내고 있지만, 루트 계획에도 이용될 수 있다는 것이 인정되어야 한다. 비록 루트 계획 시에는 궤적의 속도와 시간 요소가 불필요하지만, 루트 계획은 궤적 계획과 유사하다. 따라서, 루트 계획은 시간 요소와 속도를 고려하지 않고 기술된 방법과 시스템들을 이용하여 성취될 수 있다.
도 1은 장애물 회피 시스템 및 방법을 포함하여, 시작점(102)에서 공중 운송수단에 대한 궤적 계획을 위한 예시 환경(100)을 나타낸다. 환경(100)은 목적지(104)와 임의의 수의 장애물(예를 들면, 나무(110), 건물(112) 및 전신주(114))을 포함할 수 있다. 직통 경로(106)는 시작점(102)과 목적지(104) 사이의 가장 직통 루트를 나타내지만(즉, 직선 경로), 위에서 언급한 다양한 장애물은 공중 운송수단이 직통 경로(106)를 취하는 것을 물리적으로 차단한다. 따라서, 시작점(102)에서 목적지(104)로 이동하는 공중 운송수단은 시작점(102)과 목적지(104) 사이의 가능하고 효율적인 궤적을 계산할 필요가 있을 수 있다. 본 개시에서 기술된 바와 같이, 공중 운송수단은 시작점(102)과 목적지(104) 사이의 실현 가능한 저비용(low-cost) 궤적(108)을 효율적으로 찾기 위해 개시된 방법들을 이용할 수 있는 궤적 계획기를 독립적으로 또는 내비게이션 시스템 또는 비행 제어 시스템의 일부로서 포함할 수 있다.
시작점(102)과 목적지(104) 사이의 궤적을 계산하기 위해, 첫번째로, 반복적인 두빈스 경로는 궤적에 걸쳐 변화하는 가속들을 고려한다. 두번째로, 반복적인 두빈스 경로 계산을 이용하고 장애물을 무시하여, 씨드 중간점들을 찾기 위해 억지 접근 계산이 실행될 수 있다. 이후 씨드 중간점들은 수정 RRT 알고리즘에 의해 이용된다. 수정되지 않은 RRT의 보통의 샘플링(sampling)과 더불어 수정 RRT 알고리즘은 장애물을 회피하는 시작점(102)과 목적지(104) 사이의 경로를 찾기 위해 씨드 중간점들을 연결하기도 한다(또는 연결하기 위해 시도한다). 수정 RRT 알고리즘이 시작점(102)과 목적지(104) 사이의 경로(108)를 찾고 나면, 궤적 계획기는 궤적(108)을 줄이기 위해 스무딩을 실행한다.
도 2a 및 2b는 두 개의 예시 공중 운송수단(200a, 200b)의 사시도를 나타낸다. 도 2a는 수직 이착륙이 가능한 예시적인 자율적 다중로터(multirotor) 공중 운송수단(200a)(쿼드콥터(quadcopter; 프로펠러가 4개인 헬기)로 도시됨)을 나타내는 반면, 도 2b는 고정익(fixed wing) 항공기(200b)를 나타낸다. 어느 경우에서든, 공중 운송수단(200)는 기체(airframe)(202)(예를 들면, 동체(fuselage) 또는 섀시(chassis)), 랜딩 기어(landing gear)(204), 전자장치 모듈(220)(도 2c에 가장 잘 나타나 있음) 및 들어올리거나 추력을 제공하기 위한 하나 이상의 추력 생성기(thrust generator)(206)(예를 들면, 프로펠러와 동작적으로 연결된 엔진, 모터 또는 터빈(turbine) 등)를 포함할 수 있다. 전자장치 모듈(220)은 기체(202)와 통합될 수도 있고, 또는 별도의 하우징(housing) 또는 포드(pod)를 통해 제공될 수도 있다. 다중로터 공중 운송수단(200a)의 경우, 추력 생성기(206)는 복수의 로터 붐들(rotor booms)(212)을 통해 기체(202)와 연결될 수 있다. 고정익 항공기(200b)의 경우, 하나 이상의 고정된 날개(214)는 기체(202)에 연결될 수 있다. 하나 이상의 고정된 날개(214)가 기체(202)와 구별될 수 있는 한편, 고정익 항공기(200b)는 대신 동체 날개 혼합형(blended-wing) 또는 전익(flying-wing) 구조로 구성될 수 있다.
공중 운송수단은 일반적으로 음성 주파수를 환경으로 방출하고(emit) 반향정위 센서 근처의 장애물로부터 되돌아오는 음성 주파수의 임의의 메아리(echoes)를 감지함으로써 기능하는 반향정위 센서와 같은 하나 이상의 센서(210)(예를 들면, ISR 페이로드(payload)의 일부로서 또는 그와 별도로)를 포함할 수 있다. 메아리의 강도 및/또는 메아리의 되돌아오는 방향을 이용하여, 메아리들은 장애물들을 식별 및/또는 위치를 확인하기 위해 사용될 수 있고, 이는 결국 하나 이상의 장애물들과의 충돌을 피하기 위해 공중 운송수단이 방향을 바꾸도록 야기할 수 있다. 그러나, 센서(210)는 반향정위 센서로 한정되지 않으며, 그 중에서도 카메라, 레이더(radar), 라이다 및 이와 유사한 것을 포함하여 해당 기술분야에서 알려졌거나 알려지게 될 임의의 시각 기반 센서 또는 음향 센서를 포함할 수 있으며, 이에 제한되지 않는다. 일 양상에서는, 카메라는 광류(optical flow)와 같은 3차원 재건(reconstruction) 기법을 통해 더 큰 물체들을 식별하기 위해 이용될 수 있다. 이는 자율적 내비게이션에 유용한 정보를 제공할 수 있는 한편, 다양한 종류의 물체의 가시성에 대한 민감도 뿐만 아니라 광학 이미징(imaging)과 관련된 처리 지연은 운송수단의 비행선에서 작고 빠르게 다가오는 물체를 감지하기 위한 광학 센싱 기법의 유용성을 제한할 수 있다.
센서(210)는 공중 운송수단의 이동 방향에서 시야를 확보하기 위해 배치될 수 있고, 이로써 공중 운송수단의 경로에 있는 잠재적인 장애물을 식별한다. 예를 들면, 단일 센서(210)(또는 센서들의 단일 그룹(210))는 공중 운송수단의 전면(front)에 제공되어 공중 운송수단의 경로에 있는 충돌 위협(예를 들면, 방해물 또는 장애물)을 감지할 수 있다. 센서(210)를 비행선을 향하여 배향(orient)함으로써, 음향 감지는 광학 감지를 보완할 수 있고 운송수단에 의한 반응 기동(responsive maneuvers)의 실행을 작동시켜야 하는 목전의 방해물을 감지하기 위해 이용될 수 있다. 게다가, 자율적 다중로터 공중 운송수단(200a)에 의해 보여지는 바와 같이, 복수의 센서(210)(또는 센서들의 복수의 그룹)는 공중 운송수단(200)의 둘레(perimeter)(및/또는 상부 또는 하부)에 배치되어 공중 운송수단(200)의 비행선과 배향된 시야를 제공할 수 있다. 따라서, 복수의 센서(210)는 공중 운송수단(200)이 공중 운송수단(200)의 임의의 측면 상 충돌 위협을 감지할 수 있도록 할 것이다.
음향 센서의 하나의 목적은 직접 비행 경로(또는 다른 이동선)에 있는 장애물, 특히 시각 감지 또는 다른 기법들을 이용하여 감지되지 않을 수 있는 장애물의 즉각적인 감지를 제공하는 것임이 이해될 것이다. 이에 상응하여, 센서(210)의 하나의 목적은 특정 방향에서 장애물, 특히 시각 감지 또는 다른 기법들을 이용하여 쉽게 감지되지 않을 수 있는 장애물들의 즉각적인 감지를 제공하는 것임이 이해되어야 한다. 본 문맥에서는 반향정위 어레이(array)가 잘 동작하는 반면, 장애물의 신속하고 정확한 감지를 위해 레이저 기반 기법 또는 광학, 음향, 무선 주파수 또는 다른 센싱 양식들을 이용하는 임의의 다른 적합한 기법과 같은 다른 센서 시스템들이 추가로 또는 대신하여 적합하게 이용될 수 있다. 자율적 운송수단에서의 구현에 적합하고 방해물을 정확하고 빠르게 식별할 수 있는 이러한 임의의 기법은 본 개시에서 고려된 시스템과 방법의 반향정위 센서들을 대신하여 이용될 수 있다. 예를 들면, 동적 충돌 회피 시스템은 시각 및 음향 기반 센서들의 조합을 이용할 수 있다.
도 2c는 비행 제어 시스템(222), 전자장치 모듈(220), 센서 페이로드(210)(예를 들면, 광학 시스템(260) 및/또는 음향/반향정위 시스템(264)), 조향 기구(steering mechanism)(224)를 구비하는 공중 운송수단(200)의 블록도를 나타낸다. 일반적으로, 전자장치 모듈(220)은 공중 운송수단의 항공 전자 기기(avionics), 전원(예를 들면, 추진 배터리), 센서 페이로드 및 통신 장치 또는 시스템을 수용하기 위해 이용될 수 있다. 예를 들면, 전자장치 모듈(220)은 공중 운송수단의 비행 제어 시스템(222), 전원(236) 및 통신 장치(들)(238)를 수용하거나 또는 다른 방식으로 포함하기 위해 이용될 수 있다. 전자장치 모듈(220)은 데이터를 모으기 위한 기밀(intelligence), 감시(surveillance), 정찰(reconnaissance)(“ISR”) 페이로드(234), 라이다 센서(252), 레이더 센서(254) 또는 다른 센서들을 더 포함할 수 있다. 예를 들면, 공중 운송수단(200)은 하나 이상의 카메라들, 오디오 장치들 및 다른 센서들을 포함하는 ISR 페이로드(234) 포드(pod)를 구비할 수 있다. 공중 운송수단(200)에 의해 수집된 임의의 비디오, 이미지, 오디오, 원격 측정 및/또는 다른 센서 데이터(“감시 데이터”)는 로컬에(locally) 저장되거나 송신기/수신기와 같은 온보드(onboard) 무선 통신 장치와 연결된 안테나를 사용하여 실시간으로 공중 운송수단(200)에서 원격지로 무선으로 전송될 수 있다. 대안으로, 감시 데이터는 유선 연결을 통해(예컨대, 동작 후 테더링된(tethered) 경우 또는 지상에서) 원격지로 또는 다른 당사자(party)에게 전송되거나 다른 방식으로 전달될 수 있다.
비록 도 2c가 특정 배열을 나타내고 있지만, 구성요소들의 배열은 원하는 목적을 성취하기 위해 조정될 수 있다는 것이 이해될 것이다. 예를 들면, 비행 제어 시스템(222)은 하나 이상의 전용 하우징 내에 위치할 수 있고 및/또는 공중 운송수단(200)으로부터 제거될 수 있을(removable) 수 있다. 다른 예시에서, 크기, 무게, 전력 및 비용(SWaP-C)을 줄이기 위해, ISR(234)과 센서 페이로드(210) 사이에 구성요소들(예를 들면, 하드웨어)이 공유될 수 있다. 전자장치 모듈(220)은 기체(202)와 통합되거나 또는 별도의 하우징 내에 포함될 수 있고, 이는 잠재적으로 기체(202)에 강도(rigidity)를 제공할 수도 있다. 따라서, 전자장치 모듈(220)은 기체(202)로부터 제거될 수 있고 기체(202)에 교체 가능할 수 있으며, 본 개시에서 고려된 비행 제어 시스템(222) 및 길안내 방법들의 임의의 시스템들 또는 서브시스템들(subsystems)을 수용할 수 있다. 전자장치 모듈(220)은 길안내 및 궤적 계획 방법들을 지원하거나 촉진하기 위해 이용되는 전자장치 및 하드웨어를 포함할 수 있다. 비행 제어 시스템(222)은 공중 운송수단(220) 및 원격지와 통신 관계에서 연결될 수 있으며 통신 장치(238)를 통해 공중 운송수단(200) 및 원격지와 신호를 주고받도록 구성될 수 있다. 통신 장치(238)는 예를 들면 무선 송수신기 및 안테나일 수 있다.
비행 제어 시스템(222)은 하나 이상의 조향 기구(224) 및 센서 페이로드(210)(예를 들면, 광학 시스템(260) 및/또는 반향정위 시스템(264))와 통신적으로 연결될 수 있다. 비행 제어 시스템(222)은 조향 시스템(226), GPS 시스템(228), 자이로스코프(230), 가속도계(232), 궤적 계획기(240), 지도 시스템(242), 프로세서(244), 컨트롤러(246) 및/또는 메모리(248)를 포함할 수 있다. 비행 제어 시스템(222)은 무인 공중 운송수단 또는 다른 자율적으로 또는 수동으로 조종되는 운송수단의 작동에 필요하거나 유용한 임의의 다른 전통적인 비행 기기 장치, 센서들, 처리 회로망, 통신 회로망, 카메라 및 이와 유사한 것을 포함하는 광학 시스템 등과 같은 다른 센서들(250) 뿐만 아니라 전자장치 모듈(220) 내에 배치되는 것으로 상술된 구성요소들을 더 포함할 수 있다.
비행 제어 시스템(222)은 공중 운송수단(200)을 제어 및/또는 길안내 하기 위해 이용될 수 있다. 예를 들면, 비행 제어 시스템(222)은 내비게이션 시스템의 구성요소들로부터 수신한 신호들에 기초하여 원하는 장소에 도달하기 위해 공중 운송수단(200)을 위한 하나 이상의 길안내 경로를 식별할 수 있다. 더 구체적으로, 비행 제어 시스템(222)은 공중 운송수단(200)을 길안내 경로를 따라 원하는 장소로 안내하기 위해 조향 시스템(226)을 통해 길안내 명령들(예를 들어, 데이터 신호들)을 계산하고, 생성하고, 조향 기구(224)로 보낼 수 있다.
동작 시, 비행 제어 시스템(222)은 경로안내 시스템의 구성요소들로부터 수신한 신호들에 기초하여 원하는 장소에 도달하기 위해 길안내 경로를 따라가도록 공중 운송수단(200)을 지시 및/또는 식별할 수 있다. 예를 들면, 조향 시스템(226)은 공중 운송수단(200)을 의도된 루트를 따라 안내하기 위해 비행 제어 시스템(222)의 구성요소로부터 신호들을 수신하고 공중 운송수단의 조향 기구(224)로 적합한 제어 신호들을 제공하도록 구성될 수 있다. 실제로, 비행 제어 시스템(222)은 일반적으로 공중 운송수단(200) 내 하나 이상의 조향 기구(224)를 지시하거나 다른 방식으로 제어하도록 구성된다. 비행 제어 시스템(222)은 자동조종장치 기능을 용이하게 하고 및/또는 원격 길안내 명령에 응답할 수 있다. 이를 위해, 비행 제어 시스템(222)은 공중 운송수단(200)을 원격지로 통신 가능하게 연결할 수 있고 공중 운송수단(200)과 원격지 사이에서(예를 들면, 양방향으로) 신호를 주고받도록 구성될 수 있다(예를 들면, 통신 장치(238)를 통해). 길안내 모듈의 기능은 비행 제어 시스템(222) 내 구성요소들, 공중 운송수단(200) 내 다른 곳의 구성요소들 및/또는 원격에 위치한 구성요소들 사이에서 임의의 적합한 방식으로 분배될 수 있다. 더불어, 기체(202)로 전자장치 모듈의 제거 및 대체를 용이하게 하기 위해 적합한 전자적, 기계적 및 통신 인터페이스가 제공될 수 있다.
비행 제어 시스템(222)은 전부 또는 일부가 별도의 하우징 내부에, 기체(202) 내부에 또는 이들의 어떤 조합에 배치될 수 있다. 예를 들면, 비행 제어 시스템(222)은 운송수단의 외부에 부착될 수 있고, 또는 전부 또는 일부가 공중 운송수단 내에 배치될 수 있다. 비행 제어 시스템(222)은 공중 운송수단 상 별도의 물리적 아이템(item)일 필요는 없지만, 더 큰 내비게이션 시스템의 구성요소이거나 그 자체가 내비게이션 시스템의 모든 구성요소를 포함할 수 있다. 몇몇 예시들에서, 비행 제어 시스템(222)은 공중 운송수단(200)에 통합될 수 있고 전자장치 모듈(220) 및/또는 조향 기구(224)와 통신 관계에서 연결될 수 있다. 어떤 실시예들에서는 비행 제어 시스템(222)은 메모리, 센서, 프로세서 또는 컨트롤러와 같은 구성요소들을 공유할 수 있다. 또한, 전자장치 모듈(220)은 공중 운송수단(200)에 제거 불가능하도록 연결되거나 임의의 원하는 방식으로 공중 운송수단(200)의 기체(202) 또는 날개(212)에 통합될 수 있다. 따라서, 다양한 구성요소들의 배열은 디자이너나 조작자에 의해 원하는 대로 구성될 수 있으므로 본 개시에서 설명되거나 도시된 특정 예시에 한정되지 않아야 한다. 비행 제어 시스템(222)은 제거 가능하고 대체 가능한 패키지 또는 공중 운송수단으로부터 제거 가능하고 대체 가능한 모듈일 수 있고, 또는 공중 운송수단에 영구적으로 연결되거나 통합될 수도 있다.
조향 기구(224)는 본 개시에서 고려된 바와 같이 목적지에 도달하기 위해 길안내 경로 상에서 운송수단(200)(자율적 또는 유인 제어 하인지 여부에 관계없이)을 조종하도록 구성될 수 있다.
공중 운송수단(200)은 본 개시에 참조되거나 다른 방식으로 본 기술분야에서 알려진(또는 본 기술분야에서 알려질 바와 같은) 임의의 운송수단일 수 있다. 마찬가지로, 조향 기구(224)는 본 개시에 참조되거나 다른 방식으로 본 기술분야에서 알려진(또는 본 기술분야에서 알려질 바와 같은) 임의의 유형의 조종일 수 있다. 일반적으로, 조향 기구(224)는 비행 제어 시스템(222)으로부터의 신호들에 응답하고, 이는 의도된 루트를 따라 공중 운송수단(200)을 정확하게 안내하기 위해 피드백이나 다른 제어 시스템들을 이용할 수 있다. 조향 기구(224)는 길안내 명령에 응답하여 롤(roll), 피치(pitch), 요(yaw)를 조정함으로써 공중 운송수단(200)의 제어된 비행을 용이하게 하도록 구성될 수 있다. 이를 위해, 조향 기구(224)는 컨트롤러와 동작적으로 연결되거나 조향 시스템(226)으로부터 길안내 명령을 수신하고 응답할 수 있는 하나 이상의 프로세서들, 구동장치들(actuators), 모터들 및/또는 다른 장치들(예컨대, 전기 또는 전자기계 장치들)을 포함할 수 있다.
예시적인 조향 기구들(224)은 벡터링된 추력(vectored-thrust) 제어 시스템들과 같은 다른 비행 제어 기구들 뿐만 아니라 전통적인 비행 제어면들(control surfaces)(예를 들어, 플랩(flaps), 에일러론(ailerons), 엘리베이터(elevators), 방향타(rudders), 스포일러(spoilers), 공기제동기(air brakes) 및/또는 다른 비행 제어면들)을 포함하나 이에 한정되지 않는다. 벡터링된 추력 제어 기능은 추력이 원하는 방향을 향하도록 추력 생성기들(206)을 이동시킴으로써 용이해질 수 있으며, 따라서 비행을 제어한다. 예를 들면, 연접식(articulated) 전기 모터 배열은 직접적으로 추력 벡터를 바꾸기 위해 벡터링된 추력 제어를 이용할 수 있다. 실제로, 추력 벡터링 모터 포드들(pods)을 독립적으로 연계시키는 것은 수직 및 수평 비행 간의 빠른 전환을 가능하게 한다. 어떤 양상에서는 공중 운송수단(200)은 특히 고정익 공중 운송수단과 관련하여 둘 이상의 날개들(예컨대, 수직 안정기들(stabilizers) 및/또는 수평 안정기들)을 더 포함할 수 있다.
조향 기구(224)는 더 일반적으로 방향타, 엘리베이터, 플랩, 에일러론, 스포일러, 공기제동기 및 다른 제어면들을 포함할 수 있다. 헬리콥터와 같은 다른 공중 운송수단에 있어서, 조향 기구(224)는 호일(foils) 및 다른 제어면들과 함께, 고정 로터 또는 조향가능 로터일 수 있는 다수의 로터들을 포함할 수 있다. 지상 기반의 운송수단들에 있어서는, 조향 기구(224)는 랙과 피니언 시스템(rack and pinion system), 가변적으로 회전가능한 트레드들(treads), 재순환 볼(ball) 시스템 및 이와 유사한 것을 포함할 수 있다. 조향 기구(224)는 방향 제어와 함께, 공중 운송수단(200)의 추력, 가속 및 감속을 제공하기 위해 임의의 구성요소들을 더 포함하거나 대신 포함할 수 있다. 운송수단들이 일반적으로 구동(drive)과 방향을 위해 별도의 또는 통합된 구성요소들을 사용할 수 있는 반면, 운송수단의 움직임 제어를 용이하게 하는 모든 이러한 조합들은 본 개시에서 고려되는 “조향 기구”의 범위에 속하도록 의도된다.
GPS 시스템(228)은 전자장치 모듈(220) 또는 공중 운송수단(200)의 위치를 식별하도록 구성된 글로벌 측위 시스템의 일부일 수 있다. GPS 시스템(228)은 공적으로 또는 사적으로 작동되는 비콘들, 위치 신호 등 및 이와 유사한 것을 사용하는 다른 시스템들 뿐만 아니라 전통적인 위성 기반의 시스템들을 포함하여, 본 기술분야에서 알려져 있거나 알려질 임의의 GPS 기술을 포함할 수 있다. GPS 시스템(228)은 장소를 계산하는데 사용하기 위한 데이터를 감지하는 하나 이상의 송수신기를 포함할 수 있다. GPS 시스템(228)은 공중 운송수단(200)의 동작을 제어하고 공중 운송수단을 의도된 경로를 따라 길안내하기 위해 비행 제어 시스템(222)의 다른 구성요소들과 협동할 수 있다.
자이로스코프(230)는 전자장치 모듈(220) 또는 전자장치 모듈(220)이 연결된 공중 운송수단(200)의 회전(rotation)을 감지하도록 구성된 장치일 수 있다. 자이로스코프(230)는 공중 운송수단(200)과 일체일(integral) 수 있고 또는 전자장치 모듈(220) 하우징의 내부 또는 외부에 배치될 수 있다. 자이로스코프(230)는 본 기술분야에서 알려져 있거나 알려질 임의의 자이로스코프 또는 그 변형들(예컨대, 자이로스탯(gyrostat), 초소형 전자 기계 시스템(microelectromechanical systems)(“MEMS”), 광섬유 자이로스코프, 진동 구조 자이로스코프, 동조 자이로스코프(dynamically tuned gyroscope) 및 이와 유사한 것)을 포함할 수 있다. 자이로스코프(230)는 공중 운송수단(200)의 동작을 제어하고 공중 운송수단을 의도된 경로를 따라 길안내하기 위해 비행 제어 시스템(222)의 다른 구성요소들과 협동할 수 있다.
가속도계(232)는 전자장치 모듈(220) 또는 공중 운송수단(200)의 선형 동작을 감지하도록 구성된 임의의 장치일 수 있다. 가속도계(232)는 공중 운송수단(200)과 일체일 수 있고 또는 전자장치 모듈(220) 하우징의 내부 또는 외부에 배치될 수 있다. 가속도계(232)는 본 기술분야에서 알려진 임의의 가속도계(예컨대, 용량성(capacitive), 저항성(resistive), 스프링 질량 기반, 직류(“DC”) 반응, 전기기계적 서보(electromechanical servo), 레이저, 자기 유도(magnetic induction), 압전기(piezoelectric), 광학, 저주파, 진자 가속도계 통합 자이로 가속도계(pendulous integrating gyroscopic accelerometer), 공명, 변형계(strain gauge), 표면 탄성파, MEMS, 열적(thermal), 진공 다이오드 및 이와 유사한 것) 또는 본 기술분야에서 알려질 것을 포함할 수 있다. 가속도계(232)는 공중 운송수단(200)의 동작을 제어하고 공중 운송수단을 의도된 경로를 따라 길안내 하기 위해 비행 제어 시스템(222)의 다른 구성요소들과 협동할 수 있다.
지도 시스템(242)은 하나의 구역 내의 자연적, 인공적 특징들에 대한 위치 정보를 제공하는 지도 기반의 비행 제어 시스템의 일부일 수 있다. 이는 예컨대 지형학적 지도들, 도로, 건물, 강 및 이와 유사한 것들을 식별하는 일반 2차원 지도들, 또는 나무, 조각상, 공공기반시설, 건물 기타 등등과 같은 다양한 자연적, 인공적 방해물들의 높이와 모양을 특징짓는 상세한 3차원 데이터를 포함하는 임의의 상세 레벨의 정보를 포함할 수 있다. 일 양상에서, 지도 시스템(242)은 주위 상황의 시각적 입증을 위해 광학 시스템과 협동할 수 있고 또는 지도 시스템(242)은 경로 결정 또는 이와 유사한 목적을 위해 환경 내의 다양한 장애물들에 대한 정보를 제공하기 위해 GPS 시스템(228)과 협동할 수 있다. 일 양상에서, 지도 시스템(242)은 GPS가 거절되거나 GPS가 손상된 환경에서 보충적인 길안내 지원을 제공할 수 있다. GPS가 전부 또는 부분적으로 없을 때 지도 시스템(242)은 GPS 신호가 회복될 수 있을 때까지 위치 정보를 제공하기 위해 광학 센서들, 관성 센서들 및 기타 등등과 같은 다른 센서들(250)과 협동할 수 있다.
더욱 일반적으로 지도 시스템(242)은 본 개시에서 고려된 바와 같이 운송수단의 길안내를 지원하기 위해 비행 제어 시스템(222)의 다른 구성요소들과 통신할 수 있다. 이것은 루트의 계산을 위해 지도 정보를 제공하는 것을 포함하는 한편, 독립적인 길안내 역량도 포함할 수 있다. 예를 들면, 지도 시스템(242)은 하나 이상의 물체를 포함하는 동작 환경의 지도를 저장하는 지도 기반의 내비게이션 시스템을 제공할 수 있다. 지도 기반의 내비게이션 시스템은 카메라와 연결될 수 있고 저장된 물체들과 가시적 환경을 비교함으로써 운송수단의 위치를 식별하도록 구성될 수 있으며, 이는 GPS 데이터나 다른 위치 정보가 없을 때 위치 데이터를 제공할 수 있다.
프로세서(244)는 컨트롤러(246), 공중 운송수단(200), 비행 제어 시스템(222), 조향 기구(224) 및 본 개시에서 설명된 다른 다양한 구성요소들, 시스템들, 서브시스템들과 통신 관계에서 연결될 수 있다. 프로세서(244)는 공중 운송수단(200) 또는 비행 제어 시스템(222)의 내부 프로세서, 본 개시에서 고려되는 다양한 길안내 기능을 지원하기 위한 전자장치 모듈(220) 내의 추가적 프로세서, 공중 운송수단(200) 및 비행 제어 시스템(222)과 로컬에서(locally) 또는 원격으로 연결된 데스크탑 컴퓨터 또는 이와 유사한 것의 프로세서, 데이터 네트워크를 통해 공중 운송수단(200) 및 비행 제어 시스템(222)과 연결된 서버 또는 다른 프로세서 또는 임의의 다른 프로세서 또는 처리 회로망일 수 있다. 몇몇 예시에서 공중 운송수단(200)은 하나 이상의 카메라를 포함하는 광학 시스템(260) 및/또는 하나 이상의 반향정위 센서(266)를 포함하는 반향정위 시스템(264)을 포함할 수 있다. 비행 제어 시스템(222)은 광학 시스템(260) 및/또는 반향정위 시스템(264)으로부터 정보를 수신할 수 있다. 일반적으로, 프로세서(244)는 길안내를 지원하기 위해 공중 운송수단(200) 또는 비행 제어 시스템(222)의 동작을 제어하고 다양한 처리 및 계산 기능을 수행하도록 구성될 수 있다. 하우징 내의 프로세서가 광학 및 반향정위 데이터를 전처리(preprocess)하는 반면, 공중 운송수단(200)의 내부 프로세서는 공중 운송수단(200)의 동작을 제어하는 것과 같이, 프로세서(244)는 본 개시에서 설명된 단계들을 수행하기 위해 협동하는 다수의 다른 프로세서들을 포함할 수 있다.
프로세서(244)는 예를 들어 위치 정보, 움직임 정보, 동적 충돌 회피 시스템 데이터 및 기타 등등을 포함하는 다양한 입력들에 기초하여 하나의 장소까지 공중 운송수단(200)을 위한 길안내 경로를 식별하거나 수정하도록 구성될 수 있으며 이는 공중 운송수단(200)을 둘러싼 환경에 있는 장애물들의 정보를 제공할 수 있는, 광학 시스템 및 반향정위 시스템 뿐만 아니라 GPS 시스템(228), 지도 시스템(242), 자이로스코프(230), 가속도계(232) 및 임의의 다른 길안내 입력들로부터의 데이터에도 다양하게 기초할 수 있다. 예를 들면, 초기 경로는 자이로스코프(230), 가속도계(232) 및 이와 유사한 것에 의해 감지된 움직임에 기초한 기내 조정과 함께 GPS 시스템(228)에 의해 제공된 위치 정보에만 기초하여 결정될 수 있다. 프로세서(244)는 광학 내비게이션 시스템을 활용하도록 구성될 수 있으며, 여기에서 프로세서는 예를 들면 가시적 장애물들 주위에서 상기 장소를 향해 공중 운송수단(200)을 길안내 하고자 일련의 이미지들을 처리하고 GPS 시스템(228)을 선취(preempt)하기 위해 광류를 사용하는 것과 같이 광학 시스템의 FOA(시야) 내의 가시적 장애물을 식별하도록 구성되는 광학 내비게이션 시스템을 활용하도록 구성될 수도 있다. 프로세서(244)는 보통 운송수단의 비행선 내에서 동적 충돌 회피 시스템의 FOV 내의 장애물을 식별하도록 더욱 구성될 수 있고, 공중 운송수단(200)을 장애물을 돌아서 안내하고 공중 운송수단(200)을 상기 장소로 향하는 이전 항로(course)로 반환시키는 반응 기동을 실행하기 위해 GPS 시스템(228)과 광학 내비게이션 시스템을 선취하도록 더 구성될 수 있다.
컨트롤러(246)는 조향 기구(224)와 같은 공중 운송수단(200) 및 비행 제어 시스템(222)의 구성요소들을 제어하도록 동작 가능할 수 있다. 컨트롤러(246)는 전기적으로 또는 다른 방식으로 프로세서(244), 공중 운송수단(200), 비행 제어 시스템(222), 조향 기구(224) 및 본 개시에 설명된 장치들과 시스템들의 다른 다양한 구성요소들과 통신 관계에서 연결될 수 있다. 컨트롤러(246)는 본 개시에 기술된 공중 운송수단(200) 및 비행 제어 시스템(222)의 다양한 구성요소들을 제어하기에 적합한 소프트웨어 및/또는 처리 회로망의 임의의 조합을 포함할 수 있으며, 이는 제어 신호, 구동 신호, 전원 신호, 센서 신호 기타 등등을 송수신하기 위한 입력 및 출력과 함께, 마이크로프로세서, 마이크로컨트롤러, 주문형 집적 회로(ASIC), 프로그래밍 가능한 게이트 어레이(programmable gate arrays) 및 임의의 다른 디지털 및/또는 아날로그 구성요소들과 더불어 앞서 언급한 것들의 조합을 포함하며 이에 제한되지 않는다. 어떤 양상에서는 프로세서(244)는 컨트롤러(246)와 일체일 수 있다. 일 양상에서는 이는 온보드 프로세서와 같이 공중 운송수단(200) 및 비행 제어 시스템(222)과 직접적이고 물리적으로 연관된 회로망을 포함할 수 있다. 또 다른 양상에서는 이는 예컨대 유선 또는 무선 연결을 통해 공중 운송수단(200) 및 비행 제어 시스템(222)과 연결된 개인용 컴퓨터 또는 다른 컴퓨팅 장치와 연관될 수 있는 본 개시에 기술된 프로세서(244)와 같은 프로세서일 수 있다. 유사하게, 본 개시에 기술된 다양한 기능들은 공중 운송수단(200)을 위한 온보드 프로세서, 비행 제어 시스템(222) 및 별도의 컴퓨터 사이에서 배정될 수 있다. 다른 의미가 명시적으로 제공되거나 달리 문맥으로부터 명백하지 않는 한, 이러한 모든 컴퓨팅 장치들과 환경들은 본 개시에서 사용되는 “컨트롤러” 또는 “프로세서”라는 용어의 의미에 포함되도록 의도된다.
메모리(248)는 센싱된 장애물의 장소, 지도, 이미지, 배향(orientation), 속도, 길안내 경로, 조향 세부사항, GPS 좌표, 센서 측정값 및 이와 유사한 것을 포함하되 이에 한정되지 않는 비행 제어 시스템(222)을 위한 데이터 로그(log)를 저장하는 로컬 메모리 또는 원격 저장 장치를 포함할 수 있다. 메모리(248)는 특정 운송수단의 다수의 내비게이션으로부터 집계된 데이터 로그 또는 서로 다른 운송수단들의 다수의 내비게이션으로부터 집계된 데이터를 더 또는 대신 저장할 수 있다. 메모리(248)는 광학 시스템(260) 또는 반향정위 시스템(264)으로부터의 센서 데이터, 관련된 메타데이터(metadata) 및 이와 유사한 것을 더 또는 대신 저장할 수 있다. 메모리(248)에 저장된 데이터는 프로세서(244), 컨트롤러(246), 원격 처리원(processing resource) 및 이와 유사한 것에 의해 접근될 수 있다.
궤적 계획기(240)는 프로세서(예를 들면, 프로세서(244))를 통해 예를 들면 반복적 두빈스 경로 알고리즘, 억지 접근 알고리즘 및 RRT 알고리즘(또는 이들의 변형)을 포함하는 알고리즘을 이용하여 공중 운송수단(200)에 대한 잠재적 궤적을 계산할 수 있다. 궤적 계획기(240)는 GPS 시스템(228), 지도 시스템(242), 컨트롤러(246), 메모리(248) 등으로부터 장소 좌표를 수신할 수 있다. 궤적 계획기(240)는 지도 시스템(242), 메모리(248), 다른 센서들(250)을 포함하는 비행 제어 시스템(222)으로부터 또는 비행 제어 시스템이 광학 시스템(260) 또는 반향 정위 시스템(264) 등으로부터 수신한 정보로부터 장애물 정보를 수신할 수도 있다. 궤적 계획기(240)에 의해 계산된 궤적은 조향 시스템(226)을 통해 조향 기구(224)로 지시를 출력하기 위해 비행 제어 시스템(222)에 의해 이용될 수 있다.
어떤 양상에서 모듈식 하우징은 전자장치 모듈(220), 비행 제어 시스템(222), 광학 시스템(260) 및/또는 음향/반향정위 시스템(264)과 같은 공중 운송수단(200)의 하나 이상의 구성요소들을 둘러쌀(encase) 수 있다. 모듈식 하우징은 플라스틱, 금속, 나무, 복합 재료, 세라믹 또는 특정 운송수단의 목적 또는 운송수단의 종류에 적합한 임의의 재료로 구성될 수 있다. 모듈식 하우징은 떼어낼 수 있거나 탈거 가능(ejectable)할 수 있고, 또는 공중 운송수단(200)에 영구적으로 연결될 수도 있다. 모듈식 하우징은 나사, 클립(clips), 자석, 후크 및 루프 형 체결부재(hook-and-loop fastener)(예를 들면, 벨크로®) 등을 통해 공중 운송수단에 부착될 수 있다. 모듈식 하우징은 센서들(210)과 같은 센서들을 위해 개구들(openings)을 포함할 수 있다. 전자장치 모듈(220)은 공중 운송수단(200)의 항공 전자 장치(예를 들면, 비행 제어 시스템(206)), 전원(236), ISR 페이로드(234)와 같은 센서 페이로드 및 통신 장치 또는 시스템(238)을 수용하기 위해 이용될 수 있고, 기체(202)와 통합되거나 별도의 하우징 내에 포함될 수 있다.
도 3은 비행 제어 시스템(222)을 통해(예를 들면, 궤적 계획기(240)를 통해) 중간점 경로(306)를 따라 공중 운송수단(200)에 대해 계산된 예시적인 최적의 궤적을 나타내며, 계산된 궤적은 중간점 경로(306)를 따라 장애물(310)을 회피하도록 구성된다. 공중 운송수단은 시작 위치(302)와 종료 위치(304)를 갖는다. 이상적으로는 공중 운송수단은 중간점 경로(306)를 따라가야 한다. 그러나, 고정익 항공기와 같은 몇몇 공중 운송수단은 정확히 지점(312) 및 지점(314)에서 선회(turn)하지 못할 수도 있다. 정확히 말하면, 고정익 또는 회전익 항공기는 그들의 속도, 진로(heading) 및 운동학적 정보에 의해 계산될 수 있는 선회 반경을 갖는다. 이와 같이, 두 번의 선회(312 및 314)를 포함하고 장애물(310)을 회피하며 중간점 경로(306)를 따라 계산된 이상적인 궤적(308)이 나타나 있다. 이러한 궤적은 본 개시에 기술된 방법을 이용하여 궤적 계획기(240)를 통해 효율적으로 계산될 수 있다.
도 4는 두 번의 선회를 갖는 반복적 두빈스 경로 알고리즘의 몇몇 반복들의 예시를 나타낸다. 반복적 두빈스 경로 알고리즘은 단일 선회 또는 임의의 회수의 선회를 갖는 중간점 경로를 위해 이용될 수도 있다. 도 4에 나타난 바와 같이, 두 번의 선회를 갖는 반복적 두빈스 경로 알고리즘은 시작 위치(402)에서 시작 위치(402)에서의 진로 및 속도(406), 종료 위치(404) 및 종료 위치(404)에서의 진로 및 속도(408)를 입력으로 갖고 시작한다. 제1 회차(410)에서, 선회 반경들(412 및 414)은 시작 상태(402) 및 종료 상태(404) 중 더 큰 속도로부터 계산된다. 따라서, 50 m/s의 시작 속도(406)가 20 m/s의 종료 속도(408)보다 크므로, 선회 반경들(412 및 414)은 50 m/s의 시작 속도(406)에 따라 계산된다. 그 후 두빈스 경로 알고리즘에 따라 두빈스 경로(412)가 계산될 수 있다. 그러면 회차(420)에 나타난 바와 같이, 두빈스 경로 계산으로부터의 거리, 기본 운동학 및 공중 운송수단의 운동학적 제한들을 이용하여, 알고리즘은 명령된 종료 속도(408)에 가장 가까운 달성 가능 속도(426)를 결정한다. 제2 회차(420)에서, 가장 가까운 달성 가능 속도(425)는 25 m/s이다. 25 m/s의 새로운 달성 가능 속도(426)에 기초하여, 새로운 종료 선회 반경(424)이 계산된다. 그후 이 새로운 종료 선회 반경을 이용하여 제2 두빈스 경로(428)가 계산된다.
단계(430)에 나타난 바와 같이, 알고리즘은 1) 새로운 달성 가능 속도(436)를 찾고, 2) 새로운 제2 반경(434)을 계산하고, 3) 달성 가능 속도(436)가 명령된 종료 속도(408)와 같을 때까지 또는 대안으로서 미리 정해진 최대 반복 회수동안 새로운 두빈스 경로를 계산하는 반복적인 프로세스를 반복한다. 이러한 반복적 두빈스 경로 알고리즘을 이용하여 비행 중인 공중 운송수단의 경로와 흡사한 궤적의 근사치를 생성한다.
짧은 세그먼트 원호와 직선들을 계산하기 위해 반복적 두빈스 경로 알고리즘 외에 다른 방법들이 이용될 수 있다는 것을 유념하여야 한다. 그러면 이러한 다른 방법들의 결과는 이하 도 5a와 5b를 참고하여 더 자세하게 기술되는 억지 접근 방법에 유사하게 입력될 수 있다. 또한 몇몇 예시에서는 궤적 계획기는 반복적으로 두빈스 경로를 계산하지 않을 수 있고, 오히려 위에서 기술된 바와 같이 단순히 두빈스 경로의 제1 회차를 계산하고 계산된 제1 두빈스 경로로부터의 결과들을 이하 도 5a와 5b를 참고하여 기술되는 억지 접근 방법에 대한 궤적 세그먼트로서 이용할 수 있다.
도 5a는 장애물을 무시하면서 궤적을 계산하기 위해 억지 접근 방법을 이용하는 예시를 나타낸다. 환경(500)에서, 공중 운송수단은 시작 위치(502)를 갖는다. 궤적 계획기는 공중 운송수단이 경로점(504)을 통과하고 종점(506)에 도달해야 한다는 것을 알고 있을 수 있다. 억지 접근 방법은 짧은 세그먼트(514)에서 가능성들(possibilities)을 확인하고 목적지까지 최저 비용의 가능한 세그먼트를 선택함으로써 장애물을 무시하면서 시작점(502)에서 중간점(504)을 거쳐 종점(506)까지의 최저 비용 궤적을 식별한다. 궤적 계획기(240)는 억지 접근 방법을 이용하여 시작점(502)으로부터 궤적 가능성들(516) 중 하나 이상(예컨대, 각각)을 확인함으로써 하나의 궤적 세그먼트(514)를 식별한다. 시작점에서는 초기의 목적지는 중간점(504)이다. 따라서, 도 5a에 나타난 바와 같이 궤적 계획기(240)는 궤적 가능성들(516)로부터 궤적 세그먼트(514)를 식별하고 선택한다. 도 5a에 나타난 예시 궤적 가능성들은 오로지 예시일 뿐이며, 궤적 계획기가 선택할 수 있는 가능한 모든 궤적 세그먼트를 나타내지 않는다는 것이 인정되어야 한다. 유사하게, 도 5a에 나타난 궤적 가능성들이 모두 동일한 반경을 갖고 있지만, 위에서 기술된 바와 같이 궤적 계획기는 반복적 두빈스 경로 알고리즘을 이용함으로써 반경을 바꾸는 것을 설명할 수 있다. 그러면 궤적 계획기(240)는 억지 접근 궤적을 계산하기 위해 변화하는 반경 가능성들을 이용할 수 있지만, 도 5a에서는 단순화를 위해 궤적 가능성들(516)에 나타난 반경들은 모두 동일한 길이를 갖는다.
궤적 계획기가 중간점(504)까지 최저 비용 궤적 세그먼트(514)를 선택하고 나면, 궤적 계획기는 궤적 세그먼트들(514)이 중간점(504)에 도달할 때까지 이 프로세스를 반복한다. 궤적 세그먼트들(514)이 중간점(504)에 도달하고 나면, 다음 목적지는 종점(506)이다. 그러면 궤적 계획기는 궤적 세그먼트들이 종점(506)에 도달할 때까지 동일한 프로세스를 반복한다.
도 5b는 궤적 계획기가 억지 접근 궤적을 계산한 이후 취할 수 있는 제1 단계를 나타낸다. 억지 접근 궤적의 계산은 RRT 알고리즘을 위한 씨드 중간점들을 설정하기 위해 이용될 수 있다. 궤적 세그먼트들이 하나 이상의 알려진 장애물(508, 510, 512)의 미리 정해진 거리 내에 있었다면, 궤적 세그먼트들은 씨드 중간점으로서 이용되지 않는다. 그러면 궤적 계획기는 세그먼트(522)에 나타난 바와 같이 시작점(502)을 씨드 중간점(518)으로 함께 연결(또는 연결하기 위해 시도)한다. 이후 궤적 계획기는 세그먼트(524)에 나타난 바와 같이 씨드 중간점들을 종점(506)으로 연결하기 위해 시도한다. 또한, 궤적 계획기는 세그먼트(526)에 나타난 바와 같이 다른 씨드 중간점들을 연결하기 위해 시도할 수 있다.
도 5c는 장애물(508, 510, 512)을 회피하면서 중간점(504)을 통과하여 시작점(502)과 종점(506) 사이의 경로를 찾기 위해 수정 RRT 알고리즘을 이용하는 궤적 계획기를 나타낸다. 도 5b에 나타난 바와 같이 알려진 세그먼트들을 함께 연결한 이후, RRT 알고리즘은 환경(500)에서 무작위 지점(520)을 고른다. 예를 들면 무작위 지점(528)은 수정 RRT 알고리즘을 실행하는 궤적 계획기에 의해 무작위로 선택될 수 있다. 그러면 수정 RRT 알고리즘을 실행하는 궤적 계획기는 무작위 지점(528)에 가장 가까운 궤적 세그먼트 종점(530)을 찾는다. 그러면 수정 RRT 알고리즘을 실행하는 궤적 계획기는 무작위 지점(528) 방향으로 가는 최저 비용 궤적 세그먼트(532)를 찾는다. 무작위 지점(520)의 방향에서 기존 궤적 세그먼트 종점으로부터 연장되면서 장애물을 통과해 가지 않는 궤적 세그먼트가 식별될 수 없다면, 그 무작위 지점에 대응하는 새로운 궤적 세그먼트는 추가되지 않는다. 궤적 세그먼트들(514)을 추가하기 위해 무작위 지점들(520)을 이용하는 프로세스는 종점(506)까지의 경로가 식별될 때까지 또는 몇몇 예시에서는 최대 반복 회수가 도달될 때까지 반복될 수 있다.
도 5d는 상술된 프로세스들을 통해 식별된 예시 궤적(534)을 나타낸다. 시작점(502)과 종점(506) 사이에서 경로를 찾기 위해 궤적 계획기가 수정 RRT 알고리즘을 실행한 이후, 궤적 계획기는 궤적(534)의 길이를 줄이기 위해 스무딩 알고리즘을 실행할 수 있다. 위의 프로세스를 이용하여 계산되는 궤적(534)은 장애물들(508, 510, 512)을 회피한다.
도 6a, 6b 및 6c는 본 개시에 따라 공중 운송수단에 대한 궤적을 계산하기 위해 이용될 수 있는 예시 방법을 나타낸다. 도 6a를 참고하면, 공중 운송수단의 비행 제어 시스템은 단계(602)에서 궤적 계획 알고리즘을 시작할 수 있다. 비행 제어 시스템은 궤적 계획 방법(600)을 실행하는 별도의 궤적 계획 시스템을 가질 수 있다. 실행을 시작한 이후, 단계(604)에서 궤적 계획기는 반복적 두빈스 경로 알고리즘을 실행한다.
도 6b는 반복적 두빈스 경로 알고리즘을 실행하기 위해 공중 운송수단을 위한 궤적 계획기가 이용할 수 있는 예시 방법(604)을 나타낸다. 단계(620)에서, 궤적 계획기는 반복적 두빈스 경로 알고리즘을 시작한다. 단계(622)에서, 궤적 계획기는 공중 운송수단의 시작 위치, 시작 위치에서 공중 운송수단의 진로 및 속도, 공중 운송수단의 종료 위치 및 종료 위치에서 공중 운송수단의 명령된 진로 및 속도를 포함하는 입력을 수신한다. 그리고, 단계(624)에서 궤적 계획기는 시작 및 종료 속도 중 더 큰 속도로 공중 운송수단의 선회 반경을 계산한다. 그리고 단계(624)에서 계산된 선회 반경을 이용하여, 단계(626)에서 궤적 계획기는 알려진 두빈스 경로 방법에 따라 두빈스 경로를 계산한다. 다음으로, 단계(628)에서 궤적 계획기는 운동학과 공중 운송수단의 운동학적 제한들에 기초하여 단계(626)에서 계산된 두빈스 경로에서 달성 가능한 속도를 계산한다. 단계(628)에서 계산된 달성 가능 속도에 기초하여, 단계(630)에서 궤적 계획기는 새로운 선회 반경을 계산한다. 단계(632)에서 궤적 계획기는 단계(630)에서 계산된 새로운 선회 반경에 기초하여 새로운 두빈스 경로를 계산한다. 그리고 단계(634)에서 궤적 계획기는 달성 가능 속도를 명령된 종료 속도와 비교한다. 만약 달성 가능 속도가 명령된 속도와 동일하다면, 단계(638)에서 궤적 계획기는 반복적 두빈스 경로 알고리즘을 종료한다. 만약 달성 가능 속도가 명령된 속도와 동일하지 않다면, 궤적 계획기는 단계(636)에서 알고리즘의 미리 정해진 최대 반복 회수가 도달되었는지 확인한다. 만약 알고리즘의 미리 정해진 최대 반복 회수가 도달되지 않았다면, 방법은 단계들(630 내지 636)을 반복한다. 몇몇 예시에서는, 궤적 계획기는 단계(636)에서 최대 반복 회수를 확인하지 않을 수 있고, 대신 달성 가능 속도가 명령된 속도와 동일할 때까지 또는 몇몇 예시에서는 달성 가능 속도가 명령된 속도의 어떤 임계값 내에 있을 때까지 알고리즘을 반복할 수 있다.
몇몇 예시에서는 단계(604)에서 반복적 두빈스 경로 알고리즘을 실행하기보다, 궤적 계획기는 단순히 두빈스 경로의 제1 회차를 계산할 수 있다. 다른 예시에서는 단계(604)에서 궤적 세그먼트들을 찾기 위해 두빈스 경로를 계산하기보다, 궤적 계획기는 다른 알려진 기하학적 및 운동학적 방법들을 통해 가능한 원호 길이들과 직선들을 계산할 수 있다.
다시 도 6a를 참고하면, 단계(604)에서 두빈스 경로 알고리즘을 실행한 이후, 단계(606)에서 궤적 계획 방법(600)을 실행하는 궤적 계획기는 반복적 두빈스 경로 알고리즘의 결과를 억지 접근 알고리즘에 통합한다. 비록 별도의 단계로 도시되어 있지만, 반복적 두빈스 경로 알고리즘은 억지 접근 및 RRT 알고리즘의 서브루틴(subroutine)으로서 구현될 수 있다. 두빈스 경로 반복들은 억지 접근 방법이 작은 궤적 세그먼트들로서 이용할 수 있는 짧은 궤적들을 생성한다. 단계(606)에서 궤적 계획기는 중간점 경로를 짧은 세그먼트들로 나누고 단계(604)에서 계산된 짧은 두빈스 경로 궤적들에 의해 그 세그먼트들을 함께 연결하기 위해 반복적 두빈스 경로 알고리즘의 결과를 이용하여 억지 접근 알고리즘을 실행한다. 위에서 설명된 바와 같이, 억지 접근 방법은 시작점부터 앞의 짧은 세그먼트까지 가능성들을 살펴보고 목적지를 향하여 최저 비용으로 이동하는 궤적 세그먼트를 찾아서, 세그먼트가 목적지에 도착할 때까지 프로세스를 반복한다. 단계(608)에서, 궤적 계획기는 단계(604)에서 실행된 반복적 두빈스 경로 알고리즘으로부터의 결과들을 가능한 궤적 세그먼트들로 이용하면서 장애물을 회피하기 위해 시도하지 않고 이러한 억지 접근 방법을 실행한다. 억지 접근 방법을 실행한 이후, 단계(610)에서 궤적 계획기는 억지 접근 방법에 의해 계산된 세그먼트들로부터의 씨드 중간점들을 RRT 알고리즘에 입력한다. 단계(612)에서, 궤적 계획기는 단계(610)에서 수정 RRT 알고리즘으로 공급된 씨드 중간점들을 이용하여 수정 RRT 알고리즘을 실행한다.
도 6c는 반복적 두빈스 경로 알고리즘에 의해 계산된 궤적 세그먼트들을 이용하는 억지 접근 알고리즘에 의해 계산되는 씨드 중간점들을 이용하는 수정 RRT 알고리즘(612)을 나타낸다. 단계(640)에서 궤적 계획기는 수정 RRT 알고리즘의 실행을 시작한다. 그리고 단계(642)에서 궤적 계획기는 초기 상태를 억지 접근 방법에 의해 계산된 씨드 중간점들로 연결(또는 연결하려고 시도)한다. RRT 알고리즘은 중간점들이 장애물들을 통과하여 연결되도록 허용하지 않는다. 다음으로, 단계(644)에서 궤적 계획기는 연결된 중간점들이 목적지로 가는지 확인한다. 만약 연결된 중간점들이 목적지로 간다면, 궤적 계획기는 단계(654)에서 RRT 알고리즘을 종료한다. 만약 연결된 중간점들이 목적지로 가지 않으면, 궤적 계획기는 단계(646)에서 씨드 중간점들을 목적지로 연결(또는 연결하려고 시도)한다. 다음으로, 단계(648)에서 궤적 계획기는 환경에서 무작위 지점을 고르고, 이것을 RRT 알고리즘에 따른 트리(tree)에 추가한다. 그리고 단계(650)에서 궤적 계획기는 장애물들을 회피하면서 무작위 지점을 씨드 중간점들로 연결(또는 연결하려고 시도)한다.
그 후 단계(652)에서 궤적 계획기는 최대 반복 회수가 도달되었는지 확인할 수 있다. 만약 최대 반복 회수가 도달되었다면, 궤적 계획기는 단계(654)에서 알고리즘의 실행을 종료한다. 만약 최대 반복 회수가 도달되지 않았다면, 방법(612)는 단계(644)로 되돌아가 중간점들이 이제 목적지로 가는지 여부를 확인한다. 방법은 최대 반복 회수가 도달될 때까지 또는 중간점들이 목적지로 갈 때까지 이 프로세스를 반복할 수 있다. 몇몇 예시들에서는 수정 RRT 방법(612)은 반복 회수를 확인하는 단계를 포함하지 않을 수 있으며, 대신 목적지까지의 경로가 결정될 때까지 단계들(644 내지 650)을 반복할 수 있다. 어떤 예시에서, RRT 알고리즘 대신 다른 알고리즘들이 이용될 수 있다. 예를 들면, 알려진 알고리즘들 RRT*가 RRT를 대신하여 이용될 수 있고, RRT*는 최적의 해법으로 수렴하는 RRT의 변형이다. 예를 들면 무작위 그래프 신속 탐색(rapidly exploring random graph), RRT*-스마트, 실시간 RRT*, 쎄타(theta)-RRT, A*-RRT, A*-RRT*, 인폼드(Informed) RRT* 및 폐회로 RRT를 포함하는 다른 알고리즘들도 이용될 수 있으며, 이에 한정되지 않는다.
몇몇 예시들에서 궤적 계획기는 단계들(606, 608 또는 610)을 실행하지 않고 단계(640)에서 바로 단계(612)로 갈 수 있다. 이러한 방법에서 궤적 계획기는 단계(604)에서 반복적 두빈스 경로 알고리즘 또는 어떤 다른 방법을 이용하여 가능한 궤적 세그먼트들을 계산한다. 그 후 단계(612)에서 궤적 계획기는 단계(604)에서 계산된 가능한 궤적 세그먼트들을 이용하여 RRT 또는 상술된 어떤 다른 방법을 실행한다.
도 6a로 돌아가면, 수정 RRT 알고리즘을 실행함으로써 목적지까지의 경로를 찾은 이후, 궤적 계획기는 단계(614)에서 경로를 스무딩하여 궤적의 총 길이를 줄일 수 있다. 그리고 궤적 계획기는 궤적 계획 방법(600)의 실행을 종료한다.
본 개시에서 설명된 예시 구현들의 방법 단계들은, 다른 의미가 명시적으로 제공되거나 그렇지 않으면 문맥으로부터 명백하지 않는 한, 다음의 특허청구범위의 특허성과 일관되게, 하나 이상의 다른 당사자(parties) 또는 개체(entities)가 그 단계들을 수행하도록 하는 임의의 적합한 방법을 포함하도록 의도된다. 그러한 당사자 또는 개체는 임의의 다른 당사자나 개체의 제어나 지시 하에 있을 필요가 없고 특정 관할권(jurisdiction) 내에 위치할 필요도 없다.
위에서 인용된 특허, 특허 공개, 글(articles), 기사(journals) 및 이와 유사한 것은 그 전체가 여기에 참조로서 포함된다. 비록 다양한 실시예들이 부분, 특징 등의 특정 배열을 참고로 하여 기술되었지만 이는 가능한 모든 배열 또는 특징을 철저히 다루도록 의도된 것은 아니며, 실제로 본 기술분야의 통상의 기술을 가진 자들은 많은 다른 실시예, 수정 및 변형을 확인할 수 있을 수 있다. 따라서, 발명은 위에서 구체적으로 설명된 바와 다른 방식으로 실시될 수 있는 것으로 해석되어야 한다.
본 개시는 다음의 조항들에 기술된 대상물을 포함한다:
제1항. 비행 제어 시스템(206, 222)을 갖는 공중 운송수단(aerial vehicle)(200)을 비행 궤적(108, 534)을 따라 길안내 하기 위한 시스템으로서, 시스템은:
센서 페이로드(payload)(210); 및
센서 페이로드(210)와 동작적으로 연결되고 비행 제어 시스템(206, 222)과 통신하는 프로세서(244)를 포함하고,
프로세서(244)는:
적어도 부분적으로 센서 페이로드(210)로부터의 센서 데이터에 기초하여 복수의 경로 궤적(108, 534) 세그먼트(522, 524, 526)(514)를 계산하고;
일련의 경로 궤적(108, 534) 세그먼트(522, 524, 526)(514)를 통해 시작점과 종점(506)을 연결함으로써 시작점(502)과 종점(506) 사이의 제1 궤적(108, 534)을 계산하고;
제1 궤적(108, 534)을 통해 복수의 씨드 중간점(seed waypoint)(504)을 식별하고;
복수의 씨드 중간점(504)을 이용하는 무작위 검색 알고리즘을 실행함으로써, 센서 페이로드(210)에 의해 감지된 적어도 하나의 장애물(310, 508, 510)을 회피하는 시작점(502)과 종점(506) 사이의 제2 궤적(108, 534)을 계산하고;
공중 운송수단(200)이 제2 궤적(108, 534)을 따라 시작점(502)에서 종점(506)으로 운항하도록 지시하기 위해 길안내 명령들을 생성하고;
길안내 명령들을 비행 제어 시스템(206, 222)으로 전달하도록 구성되는 것을 특징으로 하는 시스템.
제2항. 제1항에 있어서, 프로세서(244)는 복수의 경로 궤적(108, 534) 세그먼트(522, 524, 526)(514)를 반복적으로 계산하도록 구성되는 것을 특징으로 하는 시스템.
제3항. 제1항 또는 제2항에 있어서, 프로세서(244)는:
(a) 공중 운송수단(200)의 시작 위치, 시작 속도(406, 408), 종료 위치(304, 404) 및 종료 속도(406, 408)를 입력으로 수신하는 단계;
(b) 시작 속도(406, 408) 및 종료 속도(406, 408) 중 큰 것으로부터 선회 반경(412, 414)을 계산하는 단계;
(c) 적어도 부분적으로 선회 반경(412, 414)에 기초하여 경로 궤적(108, 534) 세그먼트(522, 524, 526)를 계산하는 단계;
(d) 적어도 부분적으로 제1 경로 및 공중 운송수단(200)의 운동학적 제한들에 기초하여 달성 가능 속도(406, 408)를 계산하는 단계; 및
(e) 달성 가능 속도(406, 408)가 실질적으로 종료 속도(406, 408)와 동일할 때까지 단계 (b) 내지 단계 (d)를 반복하는 단계로서, 차후의 반복에서 선회 반경(412, 414)은 달성 가능 속도(406, 408)를 이용하여 계산되는, 단계;를 포함하는 방법을 이용하여 복수의 경로 세그먼트(522, 524, 526)를 계산하도록 구성되는 것을 특징으로 하는 시스템.
제4항. 제3항에 있어서, 무작위 검색 알고리즘을 실행하는 단계는 RRT(rapidly exploring random tree) 알고리즘을 실행하는 단계를 포함하는 것을 특징으로 하는 시스템.
제5항. 제4항에 있어서, RRT 알고리즘을 실행하는 단계는:
(a) 장애물(310, 508, 510)을 회피하면서 시작점(502)과 씨드 중간점들(504) 중 적어도 하나를 연결하는 단계;
(b) 연결된 중간점(504)이 시작점(502)을 종점(506)으로 연결하는지 확인하는 단계;
(c) 장애물(310, 508, 510)을 회피하면서 종점(506)과 씨드 중간점들(504) 중 적어도 하나를 연결하는 단계;
(d) 무작위 중간점(504)을 추가하는 단계;
(e) 장애물(310, 508, 510)을 회피하면서 복수의 씨드 중간점들(504) 중 적어도 하나를 무작위 지점에 연결하는 단계;
(f) 연결된 중간점(504)이 시작점(502)을 종점(506)으로 연결하는지 확인하는 단계;
(g) 연결된 중간점(504)이 시작점(502)을 종점(506)으로 연결할 때까지 단계 (d) 내지 (f)를 반복하는 단계;를 포함하는 것을 특징으로 하는 시스템.
제6항. 제5항에 있어서, 프로세서(244)는 궤적(108, 534)의 길이를 줄이기 위해 제2 궤적(108, 534)을 스무딩(smooth)하도록 구성된 것을 특징으로 하는 시스템.
제7항. 위 조항들 중 어느 하나에 있어서, 센서 페이로드(210)는 장애물(310, 508, 510) 감지 시스템에 연결되며, 제2 궤적(108, 534)은 장애물(310, 508, 510) 감지 시스템에 의해 감지된 장애물(310, 508, 510)을 회피하도록 식별되는 것을 특징으로 하는 시스템.
제8항. 제7항에 있어서, 센서 페이로드(210)는 라이다(LIDAR), 레이더(Radar), 반향정위(echolocation) 시스템 또는 광학 센서 중 적어도 하나를 포함하는 것을 특징으로 하는 시스템.
제9항. 비행 제어 시스템(206, 222)을 갖는 공중 운송수단(200)을 비행 궤적(108, 534)을 따라 길안내 하기 위한 방법으로서, 방법은:
프로세서(244)를 통해, 적어도 공중 운송수단(200)의 제1 속도(406, 408)를 반영하는 공중 운송수단(200)에 연결된 센서 페이로드(210)로부터의 센서 데이터에 적어도 부분적으로 기초하여 복수의 궤적(108, 534) 세그먼트(522, 524, 526) 가능성들을 계산하는 단계;
프로세서(244)를 통해, 일련의 궤적(108, 534) 세그먼트(522, 524, 526) 가능성들을 통해 시작점과 종점(506)을 연결함으로써 시작점(502)과 종점(506) 사이의 제1 궤적(108, 534)을 계산하는 단계;
프로세서(244)를 통해, 제1 궤적(108, 534)을 통해 복수의 씨드 중간점(504)을 결정하는 단계;
프로세서(244)를 통해, 복수의 씨드 중간점(504)을 이용하는 무작위 검색 알고리즘을 실행함으로써 적어도 하나의 장애물(310, 508, 510)을 회피하는 시작점(502)과 종점(506) 사이의 제2 궤적(108, 534)을 계산하는 단계;
프로세서(244)를 통해, 제2 궤적(108, 534)을 따라 공중 운송수단(200)이 시작점(502)에서 종점(506)으로 운항하도록 지시하기 위해 길안내 명령들을 생성하는 단계; 및
길안내 명령들을 비행 제어 시스템(206, 222)으로 전달하는 단계;를 포함하고,
프로세서(244)는 센서 페이로드(210)와 동작적으로 연결되고 비행 제어 시스템(206, 222)과 통신하는 것을 특징으로 하는 방법.
제10항. 제9항에 있어서, 복수의 궤적(108, 534) 세그먼트(522, 524, 526) 가능성들을 계산하는 단계는:
(a) 공중 운송수단(200)의 시작 위치, 시작 속도(406, 408), 종료 위치(304, 404) 및 종료 속도(406, 408)를 입력으로 수신하는 단계;
(b) 시작 속도(406, 408) 및 종료 속도(406, 408) 중 큰 것으로부터 선회 반경(412, 414)을 계산하는 단계;
(c) 적어도 부분적으로 선회 반경(412, 414)에 기초하여 경로 궤적(108, 534) 세그먼트(522, 524, 526)를 계산하는 단계;
(d) 적어도 부분적으로 제1 경로 및 공중 운송수단(200)의 운동학적 제한들에 기초하여 달성 가능 속도(406, 408)를 계산하는 단계; 및
(e) 달성 가능 속도(406, 408)가 실질적으로 종료 속도(406, 408)와 동일할 때까지 단계 (b) 내지 단계 (d)를 반복하는 단계로서, 차후의 반복에서 선회 반경(412, 414)은 달성 가능 속도(406, 408)를 이용하여 계산되는, 단계;
를 포함하는 것을 특징으로 하는 방법.
제11항. 제10항에 있어서, 무작위 검색 알고리즘을 실행하는 단계는:
(a) 장애물(310, 508, 510)을 회피하면서 시작점(502)과 씨드 중간점(504) 중 적어도 하나를 연결하는 단계;
(b) 연결된 중간점(504)이 시작점(502)을 종점(506)으로 연결하는지 확인하는 단계;
(c) 장애물(310, 508, 510)을 회피하면서 종점(506)과 씨드 중간점(504) 중 적어도 하나를 연결하는 단계;
(d) 무작위 중간점(504)을 추가하는 단계;
(e) 장애물(310, 508, 510)을 회피하면서 복수의 씨드 중간점(504) 중 적어도 하나를 무작위 지점에 연결하는 단계;
(f) 연결된 중간점(504)이 시작점(502)을 종점(506)으로 연결하는지 확인하는 단계;
(g) 연결된 중간점(504)이 시작점(502)을 종점(506)으로 연결할 때까지 단계 (d) 내지 (f)를 반복하는 단계;를 포함하는 것을 특징으로 하는 방법.
제12항. 제9항 또는 제10항에 있어서, 복수의 궤적(108, 534) 세그먼트(522, 524, 526) 가능성들을 계산하는 단계는:
(a) 공중 운송수단(200)의 시작 위치, 시작 속도(406, 408), 종료 위치(304, 404) 및 종료 속도(406, 408)를 입력으로 수신하는 단계;
(b) 시작 속도(406, 408) 및 종료 속도(406, 408) 중 큰 것으로부터 선회 반경(412, 414)을 계산하는 단계;
(c) 적어도 부분적으로 선회 반경(412, 414)에 기초하여 경로 궤적(108, 534) 세그먼트(522, 524, 526)를 계산하는 단계;
(d) 적어도 부분적으로 제1 경로 및 공중 운송수단(200)의 운동학적 제한들에 기초하여 달성 가능 속도(406, 408)를 계산하는 단계; 및
(e) 달성 가능 속도(406, 408)가 실질적으로 종료 속도(406, 408)와 동일하거나 미리 정해진 최대 반복 회수가 도달될 때까지 단계 (b) 내지 단계 (d)를 반복하는 단계를 포함하며,
차후의 반복에서 선회 반경(412, 414)은 달성 가능 속도(406, 408)를 이용하여 계산되는 것을 특징으로 하는 방법.
제13항. 제10항에 있어서, 무작위 검색 알고리즘을 실행하는 단계는:
(a) 장애물(310, 508, 510)을 회피하면서 시작점(502)과 씨드 중간점들(504) 중 적어도 하나를 연결하는 단계;
(b) 연결된 중간점(504)이 시작점(502)을 종점(506)으로 연결하는지 확인하는 단계;
(c) 장애물(310, 508, 510)을 회피하면서 종점(506)과 씨드 중간점들(504) 중 적어도 하나를 연결하는 단계;
(d) 무작위 중간점(504)을 추가하는 단계;
(e) 장애물(310, 508, 510)을 회피하면서 복수의 씨드 중간점(504) 중 적어도 하나를 무작위 지점에 연결하는 단계;
(f) 연결된 중간점(504)이 시작점(502)을 종점(506)으로 연결하는지 확인하는 단계;
(g) 연결된 중간점(504)이 시작점(502)을 종점(506)으로 연결하거나 미리 정해진 최대 반복 회수가 도달될 때까지 단계 (d) 내지 (f)를 반복하는 단계;를 포함하는 것을 특징으로 하는 방법.
제14항. 제9항 내지 제13항 중 어느 하나에 있어서, 장애물(310, 508, 510) 회피 궤적(108, 534)을 줄이기 위해 스무딩 알고리즘을 실행하는 단계를 더 포함하는 것을 특징으로 하는 방법.
제15항. 제9항 내지 제14항 중 어느 하나에 있어서, 복수의 궤적(108, 534) 세그먼트(522, 524, 526) 가능성들은 장애물(310, 508, 510) 회피 궤적(108, 534) 내에서 공중 운송수단(200)에 의해 가능한 가속 및 감속을 고려하는(account for) 것을 특징으로 하는 방법.
제16항. 제9항 내지 제15항 중 어느 하나에 있어서, 적어도 하나의 장애물(310, 508, 510)을 감지하는 단계를 더 포함하며, 제2 궤적(108, 534)은 감지된 적어도 하나의 장애물(310, 508, 510)을 회피하는 것을 특징으로 하는 방법.
제17항. 비행 제어 시스템(206, 222)을 갖는 공중 운송수단(200)을 비행 궤적(108, 534)을 따라 길안내 하기 위한 방법으로서, 방법은:
비행 제어 시스템(206, 222)과 통신하는 프로세서(244)를 통해, 복수의 궤적(108, 534) 세그먼트(522, 524, 526) 가능성들을 계산하는 단계로서:
(a) 공중 운송수단(200)의 시작 위치, 시작 속도(406, 408), 종료 위치(304, 404) 및 종료 속도(406, 408)를 입력으로 수신하는 단계;
(b) 시작 속도(406, 408) 및 종료 속도(406, 408) 중 큰 것으로부터 선회 반경(412, 414)을 계산하는 단계;
(c) 적어도 부분적으로 선회 반경(412, 414)에 기초하여 경로 궤적(108, 534) 세그먼트(522, 524, 526)를 계산하는 단계;
(d) 적어도 부분적으로 제1 경로 및 공중 운송수단(200)의 운동학적 제한들에 기초하여 달성 가능 속도(406, 408)를 계산하는 단계; 및
(e) 달성 가능 속도(406, 408)가 실질적으로 종료 속도(406, 408)와 동일할 때까지 단계 (b) 내지 단계 (d)를 반복하는 단계로서, 차후의 반복에서 선회 반경(412, 414)은 달성 가능 속도(406, 408)를 이용하여 계산되는, 단계;를 수행함으로써 상기 가능성들을 계산하는 단계;
프로세서(244)를 통해, 복수의 궤적(108, 534) 세그먼트(522, 524, 526)(514) 가능성들을 이용하는 무작위 검색 알고리즘을 실행함으로써 시작 위치와 종료 위치(304, 404) 사이의 장애물(310, 508, 510) 회피 궤적(108, 534)을 계산하는 단계;
프로세서(244)를 통해, 장애물(310, 508, 510) 회피 궤적(108, 534)을 따라 공중 운송수단(200)이 시작 위치에서 종료 위치(304, 404)로 운항하도록 지시하기 위해 길안내 명령들을 생성하는 단계; 및
길안내 명령들을 비행 제어 시스템(206, 222)으로 전달하는 단계;를 포함하는 것을 특징으로 하는 방법.
제18항. 제17항에 있어서, 무작위 검색 알고리즘을 실행하는 단계는 RRT(rapidly exploring random tree) 알고리즘을 실행하는 단계를 포함하는 것을 특징으로 하는 방법.
제19항. 제18항에 있어서, RRT 알고리즘을 실행하는 단계는:
(a) 장애물(310, 508, 510)을 회피하면서 시작점(502)과 씨드 중간점(504) 중 적어도 하나를 연결하는 단계;
(b) 연결된 중간점(504)이 시작점(502)을 종점(506)으로 연결하는지 확인하는 단계;
(c) 장애물(310, 508, 510)을 회피하면서 종점(506)과 씨드 중간점(504) 중 적어도 하나를 연결하는 단계;
(d) 무작위 중간점(504)을 추가하는 단계;
(e) 장애물(310, 508, 510)을 회피하면서 복수의 씨드 중간점들(504) 중 적어도 하나를 무작위 지점에 연결하는 단계;
(f) 연결된 중간점(504)이 시작점(502)을 종점(506)으로 연결하는지 확인하는 단계;
(g) 연결된 중간점(504)이 시작점(502)을 종점(506)으로 연결할 때까지 단계 (d) 내지 (f)를 반복하는 단계;를 포함하는 것을 특징으로 하는 방법.
제20항. 제19항에 있어서, 프로세서(244)는 궤적(108, 534)의 길이를 줄이기 위해 장애물(310, 508, 510) 회피 궤적(108, 534)을 스무딩하도록 구성된 것을 특징으로 하는 방법.

Claims (15)

  1. 비행 제어 시스템(206, 222)을 갖는 공중 운송수단(aerial vehicle)(200)을 비행 궤적(108, 534)을 따라 길안내 하기 위한 시스템으로서, 시스템은:
    센서 페이로드(payload)(210); 및
    센서 페이로드(210)와 동작적으로 연결되고 비행 제어 시스템(206, 222)과 통신하는 프로세서(244)를 포함하고,
    프로세서(244)는:
    적어도 부분적으로 센서 페이로드(210)로부터의 센서 데이터에 기초하여 복수의 경로 궤적(108, 534) 세그먼트(522, 524, 526)(514)를 계산하고;
    일련의 경로 궤적(108, 534) 세그먼트(522, 524, 526)(514)를 통해 시작점과 종점(506)을 연결함으로써 시작점(502)과 종점(506) 사이의 제1 궤적(108, 534)을 계산하고;
    제1 궤적(108, 534)을 통해 복수의 씨드 중간점(seed waypoint)(504)을 식별하고;
    복수의 씨드 중간점(504)을 이용하는 무작위 검색 알고리즘을 실행함으로써, 센서 페이로드(210)에 의해 감지된 적어도 하나의 장애물(310, 508, 510)을 회피하는 시작점(502)과 종점(506) 사이의 제2 궤적(108, 534)을 계산하고;
    공중 운송수단(200)이 제2 궤적(108, 534)을 따라 시작점(502)에서 종점(506)으로 운항하도록 지시하기 위해 길안내 명령들을 생성하고;
    길안내 명령들을 비행 제어 시스템(206, 222)으로 전달하도록 구성되는 것을 특징으로 하는 시스템.
  2. 제1항에 있어서, 프로세서(244)는 복수의 경로 궤적(108, 534) 세그먼트(522, 524, 526)(514)를 반복적으로 계산하도록 구성되는 것을 특징으로 하는 시스템.
  3. 제1항 또는 제2항에 있어서, 프로세서(244)는:
    (a) 공중 운송수단(200)의 시작 위치, 시작 속도(406, 408), 종료 위치(304, 404) 및 종료 속도(406, 408)를 입력으로 수신하는 단계;
    (b) 시작 속도(406, 408) 및 종료 속도(406, 408) 중 큰 것으로부터 선회 반경(412, 414)을 계산하는 단계;
    (c) 적어도 부분적으로 선회 반경(412, 414)에 기초하여 경로 궤적(108, 534) 세그먼트(522, 524, 526)를 계산하는 단계;
    (d) 적어도 부분적으로 제1 경로 및 공중 운송수단(200)의 운동학적 제한들에 기초하여 달성 가능 속도(406, 408)를 계산하는 단계; 및
    (e) 달성 가능 속도(406, 408)가 실질적으로 종료 속도(406, 408)와 동일할 때까지 단계 (b) 내지 단계 (d)를 반복하는 단계로서, 차후의 반복에서 선회 반경(412, 414)은 달성 가능 속도(406, 408)를 이용하여 계산되는, 단계;를 포함하는 방법을 이용하여 복수의 경로 세그먼트(522, 524, 526)를 계산하도록 구성되는 것을 특징으로 하는 시스템.
  4. 제3항에 있어서, 무작위 검색 알고리즘을 실행하는 단계는 RRT(rapidly exploring random tree) 알고리즘을 실행하는 단계를 포함하는 것을 특징으로 하는 시스템.
  5. 제4항에 있어서, RRT 알고리즘을 실행하는 단계는:
    (a) 장애물(310, 508, 510)을 회피하면서 시작점(502)과 씨드 중간점들(504) 중 적어도 하나를 연결하는 단계;
    (b) 연결된 중간점(504)이 시작점(502)을 종점(506)으로 연결하는지 확인하는 단계;
    (c) 장애물(310, 508, 510)을 회피하면서 종점(506)과 씨드 중간점들(504) 중 적어도 하나를 연결하는 단계;
    (d) 무작위 중간점(504)을 추가하는 단계;
    (e) 장애물(310, 508, 510)을 회피하면서 복수의 씨드 중간점들(504) 중 적어도 하나를 무작위 지점에 연결하는 단계;
    (f) 연결된 중간점(504)이 시작점(502)을 종점(506)으로 연결하는지 확인하는 단계;
    (g) 연결된 중간점(504)이 시작점(502)을 종점(506)으로 연결할 때까지 단계 (d) 내지 (f)를 반복하는 단계;를 포함하는 것을 특징으로 하는 시스템.
  6. 제5항에 있어서, 프로세서(244)는 궤적(108, 534)의 길이를 줄이기 위해 제2 궤적(108, 534)을 스무딩(smooth)하도록 구성된 것을 특징으로 하는 시스템.
  7. 제1항 내지 제6항 중 어느 하나에 있어서, 센서 페이로드(210)는 장애물(310, 508, 510) 감지 시스템에 연결되며, 제2 궤적(108, 534)은 장애물(310, 508, 510) 감지 시스템에 의해 감지된 장애물(310, 508, 510)을 회피하도록 식별되는 것을 특징으로 하는 시스템.
  8. 제7항에 있어서, 센서 페이로드(210)는 라이다(LIDAR), 레이더(Radar), 반향정위(echolocation) 시스템 또는 광학 센서 중 적어도 하나를 포함하는 것을 특징으로 하는 시스템.
  9. 비행 제어 시스템(206, 222)을 갖는 공중 운송수단(200)을 비행 궤적(108, 534)을 따라 길안내 하기 위한 방법으로서, 방법은:
    프로세서(244)를 통해, 적어도 공중 운송수단(200)의 제1 속도(406, 408)를 반영하는 공중 운송수단(200)에 연결된 센서 페이로드(210)로부터의 센서 데이터에 적어도 부분적으로 기초하여 복수의 궤적(108, 534) 세그먼트(522, 524, 526) 가능성들을 계산하는 단계;
    프로세서(244)를 통해, 일련의 궤적(108, 534) 세그먼트(522, 524, 526) 가능성들을 통해 시작점과 종점(506)을 연결함으로써 시작점(502)과 종점(506) 사이의 제1 궤적(108, 534)을 계산하는 단계;
    프로세서(244)를 통해, 제1 궤적(108, 534)을 통해 복수의 씨드 중간점(504)을 결정하는 단계;
    프로세서(244)를 통해, 복수의 씨드 중간점(504)을 이용하는 무작위 검색 알고리즘을 실행함으로써 적어도 하나의 장애물(310, 508, 510)을 회피하는 시작점(502)과 종점(506) 사이의 제2 궤적(108, 534)을 계산하는 단계;
    프로세서(244)를 통해, 제2 궤적(108, 534)을 따라 공중 운송수단(200)이 시작점(502)에서 종점(506)으로 운항하도록 지시하기 위해 길안내 명령들을 생성하는 단계; 및
    길안내 명령들을 비행 제어 시스템(206, 222)으로 전달하는 단계;를 포함하고,
    프로세서(244)는 센서 페이로드(210)와 동작적으로 연결되고 비행 제어 시스템(206, 222)과 통신하는 것을 특징으로 하는 방법.
  10. 제9항에 있어서, 복수의 궤적(108, 534) 세그먼트(522, 524, 526) 가능성들을 계산하는 단계는:
    (a) 공중 운송수단(200)의 시작 위치, 시작 속도(406, 408), 종료 위치(304, 404) 및 종료 속도(406, 408)를 입력으로 수신하는 단계;
    (b) 시작 속도(406, 408) 및 종료 속도(406, 408) 중 큰 것으로부터 선회 반경(412, 414)을 계산하는 단계;
    (c) 적어도 부분적으로 선회 반경(412, 414)에 기초하여 경로 궤적(108, 534) 세그먼트(522, 524, 526)를 계산하는 단계;
    (d) 적어도 부분적으로 제1 경로 및 공중 운송수단(200)의 운동학적 제한들에 기초하여 달성 가능 속도(406, 408)를 계산하는 단계; 및
    (e) 달성 가능 속도(406, 408)가 실질적으로 종료 속도(406, 408)와 동일할 때까지 단계 (b) 내지 단계 (d)를 반복하는 단계로서, 차후의 반복에서 선회 반경(412, 414)은 달성 가능 속도(406, 408)를 이용하여 계산되는, 단계;
    를 포함하는 것을 특징으로 하는 방법.
  11. 제10항에 있어서, 무작위 검색 알고리즘을 실행하는 단계는:
    (a) 장애물(310, 508, 510)을 회피하면서 시작점(502)과 씨드 중간점(504) 중 적어도 하나를 연결하는 단계;
    (b) 연결된 중간점(504)이 시작점(502)을 종점(506)으로 연결하는지 확인하는 단계;
    (c) 장애물(310, 508, 510)을 회피하면서 종점(506)과 씨드 중간점(504) 중 적어도 하나를 연결하는 단계;
    (d) 무작위 중간점(504)을 추가하는 단계;
    (e) 장애물(310, 508, 510)을 회피하면서 복수의 씨드 중간점(504) 중 적어도 하나를 무작위 지점에 연결하는 단계;
    (f) 연결된 중간점(504)이 시작점(502)을 종점(506)으로 연결하는지 확인하는 단계;
    (g) 연결된 중간점(504)이 시작점(502)을 종점(506)으로 연결할 때까지 단계 (d) 내지 (f)를 반복하는 단계;를 포함하는 것을 특징으로 하는 방법.
  12. 제9항, 제10항 또는 제11항에 있어서, 복수의 궤적(108, 534) 세그먼트(522, 524, 526) 가능성들을 계산하는 단계는:
    (a) 공중 운송수단(200)의 시작 위치, 시작 속도(406, 408), 종료 위치(304, 404) 및 종료 속도(406, 408)를 입력으로 수신하는 단계;
    (b) 시작 속도(406, 408) 및 종료 속도(406, 408) 중 큰 것으로부터 선회 반경(412, 414)을 계산하는 단계;
    (c) 적어도 부분적으로 선회 반경(412, 414)에 기초하여 경로 궤적(108, 534) 세그먼트(522, 524, 526)를 계산하는 단계;
    (d) 적어도 부분적으로 제1 경로 및 공중 운송수단(200)의 운동학적 제한들에 기초하여 달성 가능 속도(406, 408)를 계산하는 단계; 및
    (e) 달성 가능 속도(406, 408)가 실질적으로 종료 속도(406, 408)와 동일하거나 미리 정해진 최대 반복 회수가 도달될 때까지 단계 (b) 내지 단계 (d)를 반복하는 단계를 포함하며,
    차후의 반복에서 선회 반경(412, 414)은 달성 가능 속도(406, 408)를 이용하여 계산되는 것을 특징으로 하는 방법.
  13. 제9항 내지 제12항 중 어느 하나에 있어서, 장애물(310, 508, 510) 회피 궤적(108, 534)을 줄이기 위해 스무딩 알고리즘을 실행하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  14. 제9항 내지 제13항 중 어느 하나에 있어서, 복수의 궤적(108, 534) 세그먼트(522, 524, 526) 가능성들은 장애물(310, 508, 510) 회피 궤적(108, 534) 내에서 공중 운송수단(200)에 의해 가능한 가속 및 감속을 고려하는(account for) 것을 특징으로 하는 방법.
  15. 제9항 내지 제14항 중 어느 하나에 있어서, 적어도 하나의 장애물(310, 508, 510)을 감지하는 단계를 더 포함하며, 제2 궤적(108, 534)은 감지된 적어도 하나의 장애물(310, 508, 510)을 회피하는 것을 특징으로 하는 방법.
KR1020190112729A 2018-10-12 2019-09-11 공중 운송수단을 위한 궤적 계획기 Active KR102861523B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/158,987 2018-10-12
US16/158,987 US10878706B2 (en) 2018-10-12 2018-10-12 Trajectory planner for a vehicle

Publications (2)

Publication Number Publication Date
KR20200042394A true KR20200042394A (ko) 2020-04-23
KR102861523B1 KR102861523B1 (ko) 2025-09-17

Family

ID=68280884

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190112729A Active KR102861523B1 (ko) 2018-10-12 2019-09-11 공중 운송수단을 위한 궤적 계획기

Country Status (7)

Country Link
US (2) US10878706B2 (ko)
EP (2) EP3640595B1 (ko)
JP (1) JP7506465B2 (ko)
KR (1) KR102861523B1 (ko)
CN (1) CN111045456B (ko)
AU (1) AU2019216716B2 (ko)
CA (1) CA3052019C (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113485418A (zh) * 2021-07-02 2021-10-08 西北工业大学 一种柔性绳系约束多机器人的轨迹生成方法

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11092458B2 (en) * 2018-10-30 2021-08-17 Telenav, Inc. Navigation system with operation obstacle alert mechanism and method of operation thereof
US11808590B2 (en) * 2019-01-11 2023-11-07 Massachusetts Institute Of Technology Autonomous navigation in a cluttered environment
US11526174B2 (en) * 2019-06-07 2022-12-13 Tata Consultancy Services Limited Method and a system for hierarchical network based diverse trajectory proposal
CN111984031B (zh) * 2020-07-20 2023-09-26 鹏城实验室 一种无人机路径规划方法、无人机及存储介质
US20220034669A1 (en) * 2020-07-28 2022-02-03 Bae Systems Information And Electronic Systems Integration Inc. Navigation architecture for contested environments
CN111928853B (zh) * 2020-07-30 2023-06-02 西南电子技术研究所(中国电子科技集团公司第十研究所) 复杂环境下空基平台快速航路规划方法
US12372944B2 (en) * 2020-07-31 2025-07-29 Aurora Flight Sciences Corporation, a subsidiary of The Boeing Company Causing a robot to execute a mission using a behavior tree and a leaf node library
US12165529B2 (en) 2020-07-31 2024-12-10 Aurora Flight Sciences Corporation Selection of an alternate destination in response to a contingency event
US11797004B2 (en) 2020-07-31 2023-10-24 Aurora Flight Sciences Corporation, a subsidiary of The Boeing Company Causing a robot to execute a mission using a task graph and a task library
US11994407B2 (en) 2020-07-31 2024-05-28 Aurora Flight Sciences Corporation, a subsidiary of The Boeing Company Evaluation of a ground region for landing a robot
CN112068548B (zh) * 2020-08-07 2022-06-07 北京航空航天大学 5g环境下面向特殊场景的无人驾驶车辆路径规划方法
RU2739510C1 (ru) * 2020-08-19 2020-12-25 Юрий Вячеславович Данилов Способ навигации беспилотных мобильных средств
CN111781954B (zh) * 2020-08-26 2023-02-21 云南电网有限责任公司迪庆供电局 无人机巡检控制方法及装置
KR102487374B1 (ko) * 2020-10-26 2023-01-10 한국로봇융합연구원 무인이동체 이동경로 설정방법 및 설정장치
CN112306091B (zh) * 2020-10-28 2023-06-20 峰飞航空科技(昆山)有限公司 一种三维轨迹规划方法、装置、设备及存储介质
CN112578803A (zh) * 2020-11-24 2021-03-30 浩亚信息科技有限公司 基于三维传感技术的无人机识别规避电线系统及方法
CN112327885B (zh) * 2020-12-01 2024-04-09 大连海事大学 一种无人船自适应全局-局部混合路径规划的方法
CN112748733B (zh) * 2020-12-16 2024-05-07 广东电网有限责任公司 电缆放线车路径规划方法、装置、设备及存储介质
CN112904896B (zh) * 2021-01-21 2022-11-04 中国南方电网有限责任公司超高压输电公司柳州局 一种无人机自主驾驶航线复用方法
CN112947555B (zh) * 2021-02-04 2022-06-14 中国人民解放军国防科技大学 多机协同打击的快速航迹规划方法、装置及计算机设备
CN113119116B (zh) * 2021-03-22 2023-01-31 深圳市优必选科技股份有限公司 一种机械臂运动规划方法、装置、可读存储介质及机械臂
US12014638B2 (en) 2021-03-22 2024-06-18 Aurora Flight Sciences Corporation, a subsidiary of The Boeing Company Supporting flight operations of an aircraft in an airspace system
CN112947594B (zh) * 2021-04-07 2023-08-04 东北大学 一种面向无人机的航迹规划方法
CN113188562B (zh) * 2021-07-01 2022-03-01 新石器慧通(北京)科技有限公司 可行驶区域的路径规划方法、装置、电子设备及存储介质
CN113641832B (zh) * 2021-08-16 2022-05-10 中国科学院空天信息创新研究院 基于知识图谱面向多源离散数据的林火救援路径规划方法
CN113961000B (zh) * 2021-08-24 2024-07-23 大连海事大学 一种基于改进rrt算法的船舶路径规划与跟踪控制方法
CN113848881B (zh) * 2021-08-31 2023-11-21 国电南瑞科技股份有限公司 一种消防车路径规划方法、系统、终端以及存储介质
US11906314B2 (en) 2021-09-10 2024-02-20 Nec Corporation System for waypoint selection and method of using
US12154441B2 (en) * 2021-09-23 2024-11-26 Aurora Flight Sciences Corporation, a subsidiary of The Boeing Company Safety assurance for path planners
KR102712464B1 (ko) * 2021-12-03 2024-10-02 주식회사 네이비 3차원 환경에서의 항공 차량 이동노선 계획 방법
JP7787744B2 (ja) * 2022-02-25 2025-12-17 株式会社日立製作所 移動体の制御管理装置、制御管理方法、及び制御システム
CN115816437A (zh) * 2022-09-08 2023-03-21 安徽大学 一种智能核酸采样机器人系统
CN116301035A (zh) * 2023-02-28 2023-06-23 苏州维伟思医疗科技有限公司 无人机载aed快速救援方法、装置、设备及存储介质
CN116661490B (zh) * 2023-05-22 2026-02-24 西安电子科技大学 基于dubins方向角模型的无人机集群任务规划方法
CN116499467B (zh) * 2023-06-07 2025-09-23 广东利元亨智能装备股份有限公司 一种机器人的移动避障方法、装置、设备和介质
CN116882307B (zh) * 2023-09-08 2023-11-24 武汉理工大学 考虑不确定初始状态的车辆安全轨迹规划方法及系统
CN117389309B (zh) 2023-12-01 2024-03-05 浙江恒逸石化有限公司 无人机辅助维修的控制方法、装置、设备及存储介质
CN119964420B (zh) * 2025-02-19 2026-01-06 中国民用航空总局第二研究所 基于飞行器性能的城市空中交通枢纽进离场管理系统及方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190050575A (ko) * 2017-11-03 2019-05-13 주식회사 베이리스 무인 항공기의 비행경로 탐색 방법

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3038062A (en) 1961-04-13 1962-06-05 Harold N Liberman Lighting fixture
FR2749650B1 (fr) * 1996-06-07 1998-09-11 Sextant Avionique Procede de pilotage d'un vehicule en vue d'effectuer un changement de cap et application du procede au contournement lateral d'une zone
JP3738415B2 (ja) 1999-06-30 2006-01-25 ギャ ミン−チュン 汎用航空機用の飛行経路計画、地形の回避、及び、状況認識システム
JP5107582B2 (ja) 2007-01-15 2012-12-26 三菱電機株式会社 画像センサ搭載型航空機用航法計算プログラム
US8038062B2 (en) 2007-06-05 2011-10-18 Raytheon Company Methods and apparatus for path planning for guided munitions
US8543265B2 (en) 2008-10-20 2013-09-24 Honeywell International Inc. Systems and methods for unmanned aerial vehicle navigation
WO2010101749A1 (en) 2009-03-05 2010-09-10 Massachusetts Institute Of Technology Predictive semi-autonomous vehicle navigation system
KR101667029B1 (ko) * 2009-08-10 2016-10-17 삼성전자 주식회사 로봇의 경로 계획방법 및 장치
JP5585455B2 (ja) 2010-04-27 2014-09-10 トヨタ自動車株式会社 経路探索装置
US8897932B2 (en) 2010-06-07 2014-11-25 Toyota Jidosha Kabushiki Kaisha Flight control support device
JP5724919B2 (ja) 2012-03-22 2015-05-27 トヨタ自動車株式会社 軌道生成装置、移動体、軌道生成方法及びプログラム
US9266611B2 (en) * 2013-06-20 2016-02-23 University Of Florida Research Foundation, Inc. Flight path development for remote sensing vehicles in a moving reference frame
US9557742B2 (en) 2013-11-27 2017-01-31 Aurora Flight Sciences Corporation Autonomous cargo delivery system
CN103676944B (zh) * 2013-12-11 2016-11-23 北京理工大学 基于Dubins路径和稀疏A*搜索的无人机航迹规划方法
FR3019284B1 (fr) * 2014-03-28 2021-05-14 Thales Sa Procede de calcul de trajectoires laterales
US9262929B1 (en) 2014-05-10 2016-02-16 Google Inc. Ground-sensitive trajectory generation for UAVs
US9620022B2 (en) * 2014-06-10 2017-04-11 Sikorsky Aircraft Corporation Aircraft motion planning method
US9971354B2 (en) * 2014-06-10 2018-05-15 Sikorsky Aircraft Corporation Tail-sitter flight management system
EP3201709B1 (en) 2014-09-30 2021-03-17 NEC Corporation Method and system for determining a path of an object for moving from a starting state to an end state set avoiding one or more obstacles
US9524647B2 (en) 2015-01-19 2016-12-20 The Aerospace Corporation Autonomous Nap-Of-the-Earth (ANOE) flight path planning for manned and unmanned rotorcraft
US9821801B2 (en) 2015-06-29 2017-11-21 Mitsubishi Electric Research Laboratories, Inc. System and method for controlling semi-autonomous vehicles
KR101764653B1 (ko) * 2015-10-14 2017-08-03 국방과학연구소 이동체의 경로계획 장치 및 그 계획 방법
US10012984B2 (en) 2015-12-14 2018-07-03 Mitsubishi Electric Research Laboratories, Inc. System and method for controlling autonomous vehicles
US10665115B2 (en) 2016-01-05 2020-05-26 California Institute Of Technology Controlling unmanned aerial vehicles to avoid obstacle collision
JP6745175B2 (ja) 2016-09-12 2020-08-26 株式会社ダイヘン 移動属性設定装置
RU2757549C2 (ru) 2017-01-06 2021-10-18 Аурора Флайт Сайенсиз Корпорейшн Система и способ для предупреждения столкновений беспилотного летательного аппарата
EP4357869A3 (en) * 2017-03-20 2024-06-12 Mobileye Vision Technologies Ltd. Trajectory selection for an autonomous vehicle
CN107085437A (zh) * 2017-03-20 2017-08-22 浙江工业大学 一种基于eb‑rrt的无人机航迹规划方法
CN107238388B (zh) * 2017-05-27 2018-02-23 合肥工业大学 多无人机任务分配与航迹规划联合优化方法及装置
CN108458717B (zh) 2018-05-07 2020-04-07 西安电子科技大学 一种迭代的快速扩展随机树irrt的无人机路径规划方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190050575A (ko) * 2017-11-03 2019-05-13 주식회사 베이리스 무인 항공기의 비행경로 탐색 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113485418A (zh) * 2021-07-02 2021-10-08 西北工业大学 一种柔性绳系约束多机器人的轨迹生成方法
CN113485418B (zh) * 2021-07-02 2022-07-05 西北工业大学 一种柔性绳系约束多机器人的轨迹生成方法

Also Published As

Publication number Publication date
JP2020091842A (ja) 2020-06-11
AU2019216716B2 (en) 2024-12-19
AU2019216716A1 (en) 2020-04-30
KR102861523B1 (ko) 2025-09-17
EP3640595B1 (en) 2022-12-07
EP3640595A1 (en) 2020-04-22
US20210142680A1 (en) 2021-05-13
CA3052019C (en) 2023-10-31
CA3052019A1 (en) 2020-04-12
CN111045456A (zh) 2020-04-21
US20200118446A1 (en) 2020-04-16
JP7506465B2 (ja) 2024-06-26
US11557210B2 (en) 2023-01-17
US10878706B2 (en) 2020-12-29
CN111045456B (zh) 2024-03-22
EP4145090A1 (en) 2023-03-08

Similar Documents

Publication Publication Date Title
KR102861523B1 (ko) 공중 운송수단을 위한 궤적 계획기
US10276051B2 (en) Dynamic collision-avoidance system and method
US11092964B2 (en) Collision-avoidance system and method for unmanned aircraft
US11029157B2 (en) Autonomous vehicle navigation system and method
US20240076066A1 (en) Fixed-wing unmanned aerial vehicle capable of high angle-of-attack maneuvering
Magree et al. Georgia tech team entry for the 2013 AUVSI international aerial robotics competition
Chen Formation and flight control of affordable quad-rotor unmanned air vehicles

Legal Events

Date Code Title Description
E13-X000 Pre-grant limitation requested

St.27 status event code: A-2-3-E10-E13-lim-X000

PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

R17-X000 Change to representative recorded

St.27 status event code: A-3-3-R10-R17-oth-X000

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

P22-X000 Classification modified

St.27 status event code: A-2-2-P10-P22-nap-X000

A201 Request for examination
PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

P22-X000 Classification modified

St.27 status event code: A-2-2-P10-P22-nap-X000

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P22-X000 Classification modified

St.27 status event code: A-2-2-P10-P22-nap-X000

P22-X000 Classification modified

St.27 status event code: A-2-2-P10-P22-nap-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

F11 Ip right granted following substantive examination

Free format text: ST27 STATUS EVENT CODE: A-2-4-F10-F11-EXM-PR0701 (AS PROVIDED BY THE NATIONAL OFFICE)

PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

U11 Full renewal or maintenance fee paid

Free format text: ST27 STATUS EVENT CODE: A-2-2-U10-U11-OTH-PR1002 (AS PROVIDED BY THE NATIONAL OFFICE)

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

Q13 Ip right document published

Free format text: ST27 STATUS EVENT CODE: A-4-4-Q10-Q13-NAP-PG1601 (AS PROVIDED BY THE NATIONAL OFFICE)

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000