JP2019537140A - ビークル衝突回避 - Google Patents

ビークル衝突回避 Download PDF

Info

Publication number
JP2019537140A
JP2019537140A JP2019524326A JP2019524326A JP2019537140A JP 2019537140 A JP2019537140 A JP 2019537140A JP 2019524326 A JP2019524326 A JP 2019524326A JP 2019524326 A JP2019524326 A JP 2019524326A JP 2019537140 A JP2019537140 A JP 2019537140A
Authority
JP
Japan
Prior art keywords
vehicle
speed
processor
points
determining
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
JP2019524326A
Other languages
English (en)
Other versions
JP2019537140A5 (ja
JP7173966B2 (ja
Inventor
ターピン、マシュー・ハイアット
チャベス、スティーブン・マーク
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2019537140A publication Critical patent/JP2019537140A/ja
Publication of JP2019537140A5 publication Critical patent/JP2019537140A5/ja
Application granted granted Critical
Publication of JP7173966B2 publication Critical patent/JP7173966B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/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/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/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)
  • Artificial Intelligence (AREA)
  • Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Game Theory and Decision Science (AREA)
  • Medical Informatics (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

実施形態は、ビークル衝突回避のためのデバイスおよび方法を含む。ビークルのプロセッサは、1つまたは複数のポイントを備えるセンサデータを受信し得る。プロセッサは、ビークルから1つまたは複数のポイントへの距離および方向を決定し得る。プロセッサは、ビークルから1つまたは複数のポイントへの決定された距離および方向に基づいて、1つまたは複数のポイントの各々についての速度制約を決定し得る。ナビゲーション命令に基づいて、プロセッサは、1つまたは複数の速度制約を満たす1つまたは複数の速度解を決定し得る。プロセッサは、ナビゲーション命令に基づいて、決定された1つまたは複数の速度解から速度解を選択し得、選択された速度解に基づいて、ビークル速度を調整し得る。

Description

関連出願
[0001]本願は、2016年11月14日に出願された「Vehicle Collision Avoidance」と題する、米国仮特許出願第62/421,551号の優先権の利益を主張し、その内容全体が、その全体における参照により本明細書に組み込まれる。
[0002]動いているビークル、特に、半自律型ビークルおよびロボットビークルは、最終的には障害物回避の課題に直面する。有人ビークルが、障害物を感知し、衝突を回避するためにリアルタイムのナビゲーション決定を行うために、人間オペレータに頼り得る一方で、遠隔制御ビークルおよび半自律型ビークルは、障害物回避の自動化技法に頼らなければならない。
[0003]様々な実施形態が、物体との衝突を回避するために、ビークルのプロセッサによってインプリメントされ得る方法を含む。様々な実施形態は、1つまたは複数のポイントを備えるセンサデータを受信することと、ビークルから1つまたは複数のポイントへの距離および方向を決定することと、ビークルから1つまたは複数のポイントの各々への決定された距離および方向に基づいて、1つまたは複数のポイントの各々についての速度制約を決定することと、ビークルナビゲーション命令に基づいて、決定された速度制約を満たす1つまたは複数の速度解を決定することと、ビークルナビゲーション命令に基づいて、決定された1つまたは複数の速度解から速度解を選択することと、選択された速度解に基づいて、ビークル速度を調整することと、を含み得る。いくつかの実施形態では、センサデータを受信することは、未処理のセンサデータを受信することを含み得る。いくつかの実施形態では、1つまたは複数のポイントの各々についての速度制約は、速度不等式制約(velocity inequality constraint)を含み得る。
[0004]いくつかの実施形態では、ビークルから1つまたは複数のポイントへの距離および方向を決定することは、ビークルから障害物への距離および方向を決定することを含み得る。いくつかの実施形態では、障害物は、1つまたは複数のポイントによって表される障害物を含み得る。
[0005]いくつかの実施形態では、ビークルから1つまたは複数のポイントの各々への決定された距離および方向に基づいて、1つまたは複数のポイントの各々についての速度制約を決定することは、ビークルから1つまたは複数のポイントによって表される障害物への決定された距離および方向に基づいて、1つまたは複数のポイントの各々についての速度制約を決定することを含み得る。
[0006]いくつかの実施形態では、ビークルナビゲーション命令は、方向成分を含み得、ビークルナビゲーション命令に基づいて、決定された1つまたは複数の速度解から速度解を選択することは、ビークルナビゲーション命令の方向成分に最も密接に一致する方向成分を有する速度解を選択することを含み得る。いくつかの実施形態では、ビークルナビゲーション命令は、速さ成分を含み得、ビークルナビゲーション命令に基づいて、決定された1つまたは複数の速度解から速度解を選択することは、ナビゲーション命令の速さ成分に最も密接に一致する速さ成分を有する速度解を選択することを含み得る。
[0007]さらなる実施形態は、上記で要約された方法の動作を実行するためのプロセッサ実行可能命令を用いて構成されたプロセッサを含むビークルを含み得る。さらなる実施形態は、上記で要約された方法の機能を実行するための手段を含むビークルを含み得る。さらなる実施形態は、ビークルのプロセッサに、上記で要約された方法の動作を実行させるように構成されたプロセッサ実行可能命令を記憶したプロセッサ可読記憶媒体を含み得る。
[0008]ここに組み込まれ、本明細書の一部を成す添付の図面は、例となる実施形態を例示し、上記で与えられた概要と、以下で与えられる詳細な説明と共に、様々な実施形態の特徴を説明するのに役立つ。
[0009]図1は、様々な実施形態による、通信システム内で動作するビークルのシステムブロック図である。 [0010]図2は、様々な実施形態による、ビークルの構成要素を例示する構成要素ブロック図である。 [0011]図3は、様々な実施形態による、ビークルのボディ座標系を例示する。 [0012]図4Aは、様々な実施形態による、ビークル衝突回避の方法を例示する。 [0013]図4Bは、様々な実施形態による、ビークル衝突回避の方法を例示する。 [0014]図5は、様々な実施形態による、ビークル衝突回避の方法を例示する。 [0015]図6は、様々な実施形態による、ビークル衝突回避の方法を例示するプロセスフロー図である。 [0016]図7は、様々な実施形態による、ビークル衝突回避の方法を例示するプロセスフロー図である。
詳細な説明
[0017]様々な実施形態が、添付の図面を参照して詳細に説明される。可能な限り、同一の参照番号が、同一または同様の部分を指すように、図面全体を通して使用される。特定の例および実施形態に対してなされる参照は、例示を目的としており、特許請求の範囲を限定するようには意図されない。
[0018]様々な実施形態は、ビークルのプロセッサによってインプリメントされ得る方法を含み、ビークルが障害物との衝突を回避することを可能にすることによって、ビークルの動作を改善し得る。いくつかの実施形態では、プロセッサは、1つまたは複数のポイントを含むセンサデータを受信し得、プロセッサは、ビークルから1つまたは複数のポイントへの距離および方向を決定し得る。いくつかの実施形態では、プロセッサは、ビークルから1つまたは複数のポイントへの距離および方向を決定し得、1つまたは複数のポイントの各々への決定された距離および方向に基づいて、1つまたは複数のポイントの各々についての速度制約を決定し得る。いくつかの実施形態では、プロセッサは、ビークルから、1つまたは複数のポイントによって表され得る障害物への距離および方向を決定し得、障害物についての速度制約を決定し得る。いくつかの実施形態では、プロセッサは、1つまたは複数のポイントの各々についての速度制約を決定し得る。プロセッサは、入力速度を含み得るナビゲーション入力を受信または取得し得、速度制約の全てを満たす速度解を決定するために、入力速度と1つまたは複数の速度制約とを使用し得る。様々な実施形態はまた、ナビゲーション命令に密接に一致するようにビークル速度を調整することによって、ビークルの動作を改善し得る。様々な実施形態はまた、ポイントのグループ(これは、ポイントの非常に大きいグループを含み得る)の中から1つまたは複数のポイントを識別することと、1つまたは複数の識別されたポイントの各々についての速度制約を決定することとによって、ビークルのプロセッサへの計算の負担を低減させることによって、ビークルの動作を改善し得る。様々な実施形態では、プロセッサは、ビークル速度に限度を設ける(place bounds)ために、速度制約を使用し得る。
[0019]ここで使用される場合、「ビークル」という用語は、ロボットビークルおよび半自律型ビークルの様々なタイプのうちの1つを指す。ビークルは、搭載された(onboard)コンピューティングデバイスのメモリに記憶された命令に対する更新または何らかの遠隔操作命令を用いてビークルを操縦および/またはナビゲートするように構成された搭載されたコンピューティングデバイスを含み得る。いくつかのインプリメンテーションでは、ビークルは、複数の推進ユニットを使用して飛行のために推進される航空ビークルであり得、複数の推進ユニットのそれぞれは、ビークルに推進力および/または揚力を提供する、1つまたは複数の回転翼を含む。いくつかのインプリメンテーションでは、ビークルは、陸上ビークル、水上ビークル、または水中ビークルであり得る。ビークル推進ユニットは、バッテリ、燃料電池、電動発電機、太陽電池、または他の電力源などの、1つまたは複数のタイプの電力源によって電力供給され得、これらはまた、搭載されたコンピューティングデバイス、ナビゲーション構成要素、および/または他の搭載された構成要素にも電力供給し得る。
[0020]動いているビークル、特に、半自律型ビークルおよびロボットビークルは、最終的には障害物回避の課題に直面する。有人ビークルが、障害物を感知し、衝突を回避するためにリアルタイムのナビゲーション決定を行うために、人間オペレータに頼り得る一方で、遠隔制御ビークルおよび半自律型ビークルは、障害物回避の自動化技法に頼らなければならない。
[0021]様々な実施形態が、物体との衝突を回避するために、ビークルのプロセッサによってインプリメントされる方法を提供する。様々な実施形態では、ビークルのプロセッサは、例えば、ビークルのセンサによって受信された情報から、障害物を検出し得る。プロセッサは、ビークルと障害物の間の距離および障害物に対する角度を決定し得、障害物についての速度制約を決定し得る。プロセッサは、ナビゲーション命令を受信または取得し得、これは、入力速度を含み得る。プロセッサは、速度制約を満たす入力速度に基づいて、1つまたは複数の速度解を決定し得る。プロセッサは、ナビゲーション命令に基づいて、速度解を選択し得、プロセッサは、選択された速度解に基づいて、ビークル速度を調整し得る。いくつかの実施形態では、速度制約は、ビークルが障害物に衝突することなく達し得る最大速度を含み得る。
[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は、1つまたは複数の無線アクセス技術(RAT)を利用し得る。ワイヤレス通信リンクにおいて使用され得るRATの例は、3GPP(登録商標)ロングタームエボリューション(LTE(登録商標))、3G、4G、5G、モビリティのためのグローバルシステム(GSM(登録商標))、符号分割多元接続(CDMA)、広帯域符号分割多元接続(WCDMA(登録商標))、WiMAX(Worldwide Interoperability for Microwave Access)、時分割多元接続(TDMA)、および他の携帯電話通信技術のセルラRATを含む。通信システム100内の様々なワイヤレス通信リンクのうちの1つまたは複数において使用され得るRATのさらなる例は、Wi−Fi、LTE−U、LTE−Direct、LAA、MuLTEfireなどの中距離プロトコルと、ZigBee(登録商標)、Bluetooth(登録商標)、およびBluetooth Low Energy(LE)(登録商標)などの比較的短距離のRATとを含む。
[0025]ネットワーク要素110は、ネットワークサーバまたは別の同様のネットワーク要素を含み得る。ネットワーク要素110は、通信リンク122を介して、通信ネットワーク108と通信し得る。ビークル102およびネットワーク要素110は、通信ネットワーク108を介して通信し得る。ネットワーク要素110は、ナビゲーション情報、気象情報、局地的な航空、陸上、および/または海上の交通についての情報などの様々な情報、移動(movement)制御命令、およびビークル102の動作に関連する他の情報、命令、またはコマンドを、ビークル102に提供し得る。
[0026]様々な実施形態では、ビークル102は、動きの経路150上で、環境を通って移動し得る。ビークル102が環境を通って移動するにつれて、ビークルは、障害物140または障害物142などの、障害物を検出し得る。障害物は、ビークル102に対して衝突のリスクをもたらし得る。障害物142などのいくつかの障害物は、比較的より小さく、回避またはよけて進む(navigate around)ことが可能であり得る。障害物140などのいくつかの障害物は、壁または同様の障壁などの、回避またはよけて進むことが不可能な障害物を含み得る。
[0027]ビークルは、様々な設計を含み得る。図2は、様々な実施形態を利用し得る例となるビークル200を例示する。ビークル200が、航空設計を有して例示されている一方で、この例示は、様々な実施形態が回転翼航空機ビークルに、または航空ビークルに限定されることを暗示または必要とするようには意図されない。様々な実施形態は、有翼ビークルのみならず、地上ビークル、モータビークル、および水中ビークルと共に使用され得る。他の設計のビークルが、航空ビークル200に関して以下で説明される要素に類似した要素を含み得、特定のビークル設計に対して、適宜、他の要素も含み得ることがまた、理解されるであろう。
[0028]図1および図2を参照すると、ビークル200は、ビークル102に類似し得る。ビークル200は、離昇(または離陸)ならびに他の空中移動(例えば、前進、上昇、下降、横移動、傾斜(tilting)、回転、等)を提供するために、対応するモータによって駆動される1つまたは複数の回転翼202を利用する。ビークル200は、いくつかの回転翼202、フレーム204、および着陸支柱(landing columns)206またはスキッドを含み得る。フレーム204は、回転翼202に関連付けられたモータのための構造的支持を提供し得る。着陸支柱206は、ビークル200の複数の構成要素と、場合によっては、ペイロードとの組合せについての最大荷重(maximum load weight)を支え得る。説明および例示を簡単にするために、配線、フレーム構造インターコネクト、または当業者には既知であろう他の特徴などの、ビークル200のいくつかの詳細な態様が省略されている。例えば、ビークル200が、いくつかの支持部材またはフレーム構造を有するフレーム204を有するように説明および示されている一方で、ビークル200は、モールド成形された構造を通じて支持が得られるモールド成形されたフレームを使用して組み立てられ得る。例示されているビークル200が4つの回転翼202を有する一方で、これは単に例示的であり、様々な実施形態は、4つよりも多いまたは少ない回転翼202を含み得る。
[0029]ビークル200は、ビークル200の動作を制御および電力供給するために使用される様々な回路およびデバイスを収容し得る制御ユニット210をさらに含み得る。制御ユニット210は、プロセッサ220、電力モジュール230、センサ240、ペイロード固定ユニット244、出力モジュール250、入力モジュール260、および無線モジュール270を含み得る。
[0030]プロセッサ220は、様々な実施形態の動作を含む、ビークル200の移動(travel)および他の動作を制御するためのプロセッサ実行可能命令を用いて構成され得る。プロセッサ220は、ナビゲーションユニット222、メモリ224、ジャイロ/加速度計ユニット226、およびアビオニクスモジュール228を含み得るか、またはそれらに結合され得る。プロセッサ220および/またはナビゲーションユニット222は、ナビゲーションに有用なデータを受信し、リアルタイムの位置報告を提供し、およびデータを評価するために、ワイヤレス接続(例えば、セルラデータネットワーク)を通じてサーバと通信するように構成され得る。
[0031]アビオニクスモジュール228は、プロセッサ220および/またはナビゲーションユニット222に結合され得、ナビゲーションユニット222が全地球航法衛星システム(GNSS)位置更新間の推測航法などのナビゲーション目的のために使用し得る高度、姿勢、対気速度、進行方向(heading)、および同様の情報などの、移動制御関連情報を提供するように構成され得る。
[0032]ジャイロ/加速度計ユニット226は、加速度計、ジャイロスコープ、慣性センサ、または他の同様のセンサを含み得る。アビオニクスモジュール228は、ナビゲーションおよび位置決定において使用され得る、ビークル200のオリエンテーションおよび加速度に関するデータを提供するジャイロ/加速度計ユニット226からのデータを含むか、または受信し得る。
[0033]プロセッサ220は、(例えば、可視光、赤外線、紫外線、および/または他の波長の光を感知することが可能な)光学センサまたは画像センサなどのセンサ240から追加の情報をさらに受信し得る。センサ240はまた、無線周波数(RF)センサ、気圧計、ソナーエミッタ/検出器、レーダーエミッタ/検出器、マイクロフォンまたは別の音響センサ、あるいは移動動作のみならず、ナビゲーションおよび位置決定および計算のためにプロセッサ220によって使用可能な情報を提供し得る別のセンサも含み得る。センサ240は、ビークル200が表面との接触を行ったときを示す信号を提供し得る、接触または圧力センサを含み得る。ペイロード固定ユニット244は、制御ユニット210からのコマンドに応答してペイロードを把持および解放するために、把持および解放機構を駆動するアクチュエータモータと、制御ユニット210に応答する関連制御装置とを含み得る。様々な実施形態では、制御ユニット210は、入力モジュール260を装備し得、これは、様々なアプリケーションのために使用され得る。例えば、入力モジュール260は、搭載されたカメラまたはセンサから画像またはデータを受信し得、または他の構成要素(例えば、ペイロード)から電子信号を受信し得る。
[0034]いくつかの実施形態では、ナビゲーションユニット222は、飛行コントローラモジュール222aおよび経路プランナモジュール222bなどの、様々な異なる機能を実行するためのモジュールを含み得る。飛行コントローラモジュール222aは、計算を実行し、ビークルの移動のその時々での制御(moment-to-moment control)に関連する、ビークル200上の様々なモータコントローラおよび/またはアクチュエータに命令を送り得る。飛行コントローラモジュール222aは、ジャイロ/加速度計ユニット226、アビオニクスモジュール228、およびセンサ240のうちの1つまたは複数からの情報を使用し得る。経路プランナモジュール222bは、(ビークル200の移動のその時々での制御とは対照的に)グローバル経路計画に関連する計算および決定を実行し得、飛行コントローラモジュール222aに経路情報を送り得る。
[0035]電力モジュール230は、プロセッサ220、センサ240、ペイロード固定ユニット244、出力モジュール250、入力モジュール260、および無線モジュール270を含む、様々な構成要素に電力を供給し得る1つまたは複数のバッテリを含み得る。加えて、電力モジュール230は、再充電可能バッテリなどの、エネルギー貯蔵構成要素を含み得る。プロセッサ220は、充電制御回路を使用して充電制御アルゴリズムを実行することなどによって、電力モジュール230の充電(すなわち、採取されたエネルギーの貯蔵)を制御するためのプロセッサ実行可能命令を用いて構成され得る。代替または追加として、電力モジュール230は、それ自体の充電を管理するように構成され得る。プロセッサ220は、出力モジュール250に結合され得、これは、回転翼202と他の構成要素とを駆動するモータを管理するための制御信号を出力し得る。
[0036]ビークル200は、ビークル200が目的地に向かって進むにつれて(as)、回転翼202の個々のモータの制御を通じて制御され得る。プロセッサ220は、ナビゲーションユニット222からデータを受信し、ビークル200の現在位置およびオリエンテーション、ならびに目的地または中間地点に向かう適切な進路を決定するために、そのようなデータを使用し得る。様々な実施形態では、ナビゲーションユニット222は、ビークル200がGNSS信号を使用してナビゲートすることを可能にするGNSS受信機システム(例えば、1つまたは複数の全地球測位システム(GPS)受信機)を含み得る。いくつかの実施形態では、ナビゲーションユニット222は、視覚慣性オドメトリなどの、画像ベースのシステムから導出された位置を受信または決定し得る。代替または追加として、ナビゲーションユニット222は、ナビゲーションビーコン(例えば、超短波(VHF)全方向式レンジ(VOR)ビーコン)、Wi−Fiアクセスポイント、セルラネットワークサイト、無線局、遠隔コンピューティングデバイス、他のUAV、等のような、無線ノードからのナビゲーションビーコンまたは他の信号を受信するための無線ナビゲーション受信機を装備し得る。
[0037]無線モジュール270は、航空ナビゲーション設備、等からの信号などのナビゲーション信号を受信し、ビークルナビゲーションを支援するために、プロセッサ220および/またはナビゲーションユニット222にそのような信号を提供するように構成され得る。様々な実施形態では、ナビゲーションユニット222は、地上の認識可能なRFエミッタ(例えば、AM/FM無線局、Wi−Fiアクセスポイント、およびセルラネットワーク基地局)から受信される信号を使用し得る。
[0038]無線モジュール270は、モデム274および送信/受信アンテナ272を含み得る。無線モジュール270は、ビークルコントローラ290とのみならず、ワイヤレス電話通信基地局またはセルタワー(例えば、基地局104)、ネットワークアクセスポイント(例えば、アクセスポイント106)、ビークル200がそれと通信し得るビーコン、スマートフォン、タブレット、または別のコンピューティングデバイス(ネットワーク要素110など)とのワイヤレス通信を行うように構成され得る。プロセッサ220は、送信/受信アンテナ292を介してワイヤレス通信デバイス290と、無線モジュール270のアンテナ272およびモデム274とを介して、双方向ワイヤレス通信リンク294を確立し得る。いくつかの実施形態では、無線モジュール270は、異なる無線アクセス技術を使用する異なるワイヤレス通信デバイスとの複数の接続(multiple connections)をサポートするように構成され得る。
[0039]制御ユニット210の様々な構成要素が別個の構成要素として例示されている一方で、構成要素(例えば、プロセッサ220、出力モジュール250、無線モジュール270、および他のユニット)の一部または全ては、システムオンチップモジュールなどの、単一のデバイスまたはモジュールにおいて共に一体化され得る。
[0040]いくつかの実施形態では、ロボットビークルまたは半自律型ビークルは、その環境を感知し、およびまたはフレームまたはボディ座標系に基づいて、ある特定のナビゲーションおよび/または飛行の決定を下し得る。図3は、3軸ボディフレーム座標系300の一例を例示する。図1〜図3を参照すると、いくつかの実施形態では、ビークルのプロセッサ(例えば、プロセッサ220)は、ボディフレーム座標系に対する(relative to)ビークルから障害物への(または、以下でさらに説明するように、ポイントへの)方向および距離を決定し得る。いくつかの実施形態では、ボディフレーム座標系300は、ワールドフレーム、ボディフレーム、重力整列されたボディフレーム(gravity-aligned body frame)、および同様のものを含む、様々なフレームを使用し得る。様々な実施形態では、ビークルのプロセッサ(例えば、プロセッサ220)は、X軸、Y軸、およびZ軸のそれぞれに対するロケーションを示し得る。プロセッサは、(例えば、前後方向をX軸と、左右をY軸と、および上下をZ軸と、のように)相対方向を各軸と関連付け得る。
[0041]図4Aは、様々な実施形態による、ビークル衝突回避の方法400を例示する。図1〜図4Aを参照すると、ビークル402(これは、ビークル102および200に類似し得る)のプロセッサ(例えば、プロセッサ220)は、ビークルのセンサ(センサ240のうちの1つまたは複数など)を使用して、障害物140および142などの障害物を検出し得る。いくつかのインプリメンテーションでは、センサは、ビークル402のプロセッサが、ビークル402から障害物(例えば、障害物140および142)への距離および方向(例えば、角度)を決定することを可能にするデータを得るか、または受信し得る。センサは、例えば、プロセッサがビークル402から障害物140および142への距離および方向を決定するために使用し得るステレオからの奥行き(DFS:depth-from-stereo)情報を、ビークル402のプロセッサが得ることを可能にし得る、双眼カメラなどの双眼センサを含み得る。別の例として、センサは、障害物140および142への距離および方向を決定するための情報をプロセッサに提供し得るレーダー、ライダー、ソナー、または別のセンサのうちの1つまたは複数を含み得る。
[0042]検出された障害物のサイズ、形状、および他の特徴(characteristic)を決定することなどの、障害物を特徴付けることは、計算集約的(computationally intensive)であり得る。プロセッサへの計算の負担を低減させるために、いくつかの実施形態では、プロセッサは、障害物140上に例示されたポイント404(1−n)および障害物142上に例示されたポイント406(1−n)などの、1つまたは複数のポイントを識別し得る。1つまたは複数のポイント(例えば、404(1−n)および406(1−n)の各々は、ポイントのロケーションにおける障害物の存在を示し得、および/またはそれ自体が障害物の全体であり得る。いくつかの実施形態では、1つまたは複数のポイントの各々は、障害物を表し得る。いくつかの実施形態では、プロセッサは、いかなるポイントも、識別しない可能性があり、または識別することができない可能性があり、これは、障害物が検出されなかったことを示し得る。
[0043]いくつかの実施形態では、プロセッサは、ポイント404a、404b、404c...404(n)、およびポイント406a、406b...406(n)などの、1つまたは複数のポイントを識別し得る。いくつかのインプリメンテーションでは、ポイントは、障害物(例えば、障害物140および142)上のまたはその近くのポイントであり得るが、これは必須ではない。いくつかの実施形態では、プロセッサは、例えば、ビークル402のセンサの、視野から1つまたは複数のポイントを識別し得る。例えば、プロセッサは、カメラを使用して画像を受信し得、画像における1つまたは複数のポイントを識別し得る。いくつかのインプリメンテーションでは、ポイントは、画像におけるピクセルに対応し得る。いくつかのインプリメンテーションでは、プロセッサは、画像における各ピクセルにつき1つのポイントなど、非常に多くのポイントを識別し得る。いくつかの実施形態では、プロセッサは、より少ないポイントを識別することによって、処理負担を低減させ得る。いくつかの実施形態では、プロセッサは、画像の解像度を低減させることによって、処理負担を低減させ得、それによって、ポイントをそれから識別するためのピクセル数を低減させる。
[0044]様々な実施形態では、プロセッサは、カメラからの未処理の画像データなどの、未処理のセンサデータ(「生のセンサデータ」)を受信し得、センサデータにおいて表される物体を認識または識別するために、受信された生のセンサデータに対してさらなる処理を実行しない場合がある(may not perform)。例えば、プロセッサは、センサの視野内の物体を認識する、定義する、位置を特定する、または他の方法で特徴付けるために、センサデータに対して解析を実行しない場合がある。したがって、物体が、受信された生のセンサデータを処理することによって認識または特徴付けられ得る一方で、様々な実施形態は、そのような計算集約的な動作を伴うことも、必要とすることもない。いくつかの実施形態では、プロセッサは、センサデータによって表される物体を識別するために、アルゴリズムまたは数式に未処理のセンサデータを適用しない場合がある。
[0045]各検出された障害物(例えば、140、142)について、または各識別されたポイント(例えば、404(1−n)、406(1−n)について、プロセッサは、プロセッサがビークル402の速度を調整するために使用し得る速度制約を決定し得る。(例えば、ビークル402の)速度、および速度制約は、それぞれ方向成分および速さ成分を含むベクトル量であり得る。いくつかの実施形態では、ビークル402のプロセッサは、障害物上の各ポイントについての速度制約を決定し得る。速度制約の決定は、ビークルから障害物またはポイントへの距離および方向に基づき得る。様々な実施形態では、プロセッサは、障害物またはポイントへの距離および/または方向が変化するにつれて、新しい/異なる速度制約を決定し得る。様々な実施形態では、プロセッサは、ビークルが各障害物またはポイントに対して空間を通って移動するにつれて、速度制約を決定し得る。いくつかの実施形態では、プロセッサは、プロセッサの能力および利用可能な処理リソースに依存して、毎秒何回も(潜在的に毎秒数百回または数千回)速度制約を決定し得る。
[0046]様々な実施形態では、ビークルから障害物またはポイントへの決定された距離は、停止距離を含み得る。停止距離は、障害物またはポイントと衝突することを回避するために、ビークルが障害物またはポイントに向かって移動するのを停止しなければならない、障害物(またはポイント)からの緩衝距離であり得る。いくつかの実施形態では、停止距離は、少なくともビークルの長さ(またはビークルのサイズの別の測定値)であり得る。停止距離はまた、ビークルと、障害物またはポイントとの間により大きい緩衝を提供するために、追加の距離を含み得る。プロセッサは、ビークルセンサの感度に基づいて、停止距離を決定または調整し得る。例えば、双眼カメラセンサは、最小の奥行知覚を有し得、プロセッサは、センサの最小の奥行知覚に基づいて、停止距離を決定し得る。プロセッサはまた、ビークル速度、ビークル質量(例えば、ある速度で移動しているビークルが停止する距離)、プロセッサの処理の速さ、およびビークルのダイナミクスから導出され得るその他任意の特性(property)に基づいて、停止距離を決定または調整し得る。
[0047]いくつかの実施形態では、プロセッサは、距離値「d」を決定し得、これは、以下のように表され得る:
d=D-δ[式1]
ここで、「D」は、ビークルから障害物またはポイントまでの総距離を表し、「δ」は、停止距離を表し、「d」は、ビークルから停止距離までの距離(すなわち、総距離から停止距離を差し引いたもの)を表す。
[0048]様々な実施形態では、プロセッサは、ビークルのボディ座標フレームの基準軸と、ビークルから障害物またはポイントへ延びる線との間の角度を表す角度「θ」を決定することによって、障害物またはポイントの位置を決定し得る。いくつかの実施形態では、プロセッサは、ボディ座標フレームの2つ以上の基準軸と、ビークルから障害物またはポイントへ延びる線との間の2つ以上の角度(例えば、x軸からの角度、y軸からの角度、およびz軸からの角度のうちの1つまたは複数)を決定し得る。様々な実施形態では、プロセッサは、ビークルが障害物またはポイントに対して移動するにつれて、新しい/異なる角度および距離を決定し得る。
[0049]図4Bは、様々な実施形態による、ビークル衝突回避の方法400を例示する。図1〜図4Bを参照すると、ビークル402(これは、ビークル102および200に類似し得る)のプロセッサ(例えば、プロセッサ220)は、プロセッサが複数の速度制約を満たす速度解を決定するために使用し得る複数の速度制約を決定し得る。例えば、3つのポイント(例えば、ポイント404b、404c、および406a)について、プロセッサは、それぞれの速度制約410、420、および430を決定し得る。プロセッサは、ビークルの速度を制限または限定するために、速度制約410、420、および430を使用し得る。いくつかの実施形態では、プロセッサは、各ポイント(または障害物)の基準フレーム内にビークルの速度を制限または限定するために、速度制約410、420、および430を使用し得る。いくつかの実施形態では、プロセッサは、入力(例えば、命令されたまたは指令された)ビークル速度(例えば、Vinput440)を含むナビゲーション命令を受信し得、プロセッサは、1つまたは複数の速度解(例えば、Vsolution450)を決定するために、速度制約410、420、および430と、入力速度Vinput440とを使用し得る。様々な実施形態では、入力速度440および速度解450は、方向成分および速さ成分をそれぞれ含み得る。
[0050]いくつかの実施形態では、速度制約は、ビークルが障害物またはポイントに衝突することなく達し得る(または、プロセッサが、それにビークルが達することを許可し得る)最大速度を表し得る。速度制約は、次の関数によって表され得る:
=2ad[式2]
ここで、「V」は、速度制約を表し、「a」は、最大加速度(これは、一定であることも、一定でないこともあり得る)を表し、「d」は、ビークルから停止距離への距離を表す。
[0051]様々な実施形態では、決定された速度制約は、ポイントまたは障害物から最も遠い停止距離のエンドポイントに位置する、ビークルと障害物またはポイントとの間の仮想「フェンス」または「障壁」を定義する超平面として表され得る。プロセッサは、各速度制約を満たす(例えば、それ以下である)速度解を決定する際に、各速度制約410、420、および430を使用し得、それによって、ビークルが各障害物またはポイントについての停止距離内へ移動するのを防止する。例えば、図4Bに例示されるように、入力速度Vinput440は、速度制約410および420を超えている(その上側および左側に例示される)。プロセッサは、(プロセッサが全体として(in the aggregate)考慮し得る)速度制約410、420、および430を使用して、速度解Vsolution450を返し得、これは、(以下で例示されるように)速度制約410、420、および430内にある。したがって、いくつかの実施形態では、プロセッサは、組み合わされた速度制約410、420、および430によって、ビークルの速度を制限または限定し得る。
[0052]様々な実施形態では、プロセッサは、1つまたは複数の障害物またはポイントとの衝突を回避するために、速度制約を使用してナビゲーション命令を修正または調整し得る。例えば、ビークルは、入力速度440を示すナビゲーション命令を取得し得る。いくつかの実施形態では、プロセッサは、コントローラ130からなどの、ユーザ入力からナビゲーション命令を取得し得る。いくつかの実施形態では、プロセッサは、ビークルのメモリに記憶され得る記憶されたナビゲーションデータにアクセスすることによって、ナビゲーション命令を取得し得る。いくつかの実施形態では、プロセッサは、ネットワーク要素110などの遠隔ソースからのナビゲーションデータの送信を受信することによって、ナビゲーション命令を取得し得る。
[0053]ナビゲーション命令は、ビークルが移動すべき方向および速さを示す方向成分および速さ成分を含み得る。プロセッサが、所望の速度440が制約410、420、および430のうちの1つまたは複数を超過すると決定した場合、プロセッサは、速度制約410、420、および430を満たすことになる(例えば、違反しないであろう)速度解を決定するために、所望の速度440と、速度制約410、420、および430とを使用して、最適化関数(optimization function)を実行し得る。いくつかの実施形態では、速度制約が等式(equality expression)を使用して生成される一方で、各速度制約は、それ未満にプロセッサがビークル速度を維持しなければならないしきい値速度を提供する不等式(「速度不等式制約」)として表され得る。例えば、速度不等式制約は、次の関数によって表され得る:
Figure 2019537140
ここで、
Figure 2019537140
は、ビークルから障害物またはポイント「i」へのベクトルを表し、「a」は、最大加速度(これは、一定であることも、一定でないこともあり得る)を表し、「d」は、それ以内ではビークルが障害物またはポイントとの衝突を回避し得る距離(例えば、ビークルから、障害物またはポイントについての停止距離までの距離)を表す。いくつかの実施形態では、プロセッサは、1つまたは複数の速度解450を生成するために、速度制約410、420、430および所望の速度440を最適化関数に渡し得る。速度解450は、ビークルのナビゲーションユニット/飛行コントローラによってインプリメントされた場合に、ビークルが(1つまたは複数の)障害物または(1つまたは複数の)ポイントと衝突するのを防止するであろう代替速度(alternate velocities)であり得る。
[0054]いくつかの実施形態では、ビークルは、1つまたは複数の生成された速度解450を所望の速度440と比較し得、所望の速度440の速さ成分および方向成分のうちの少なくとも1つに最も密接に一致する速度解450を選択し得る。したがって、いくつかの実施形態では、プロセッサは、ナビゲーション命令の方向成分に最も密接に一致する方向成分を有する速度解を選択し得る。いくつかの実施形態では、プロセッサは、ナビゲーション命令の速さ成分に最も密接に一致する速度解を選択し得る。いくつかの実施形態では、プロセッサは、ナビゲーション命令の方向成分および速さ成分に最も密接に一致する方向成分および速さ成分の両方を有する速度解を選択し得る。いくつかの実施形態では、プロセッサは、速度制約410、420、および430を反復的に(例えば、周期的にまたは非周期的に)再決定し得、ビークルが障害物またはポイントを基準として(with reference to)移動するにつれて、衝突を回避するために速度解450を再決定し得る。いくつかの実施形態では、速度制約および速度解の反復的な再決定は、プロセッサが、ナビゲーション命令に最も密接に一致する決定された速度解を選択することを可能にし得る。その後、プロセッサは、選択された速度解に基づいて、ビークル速度を調整し得る。動作中、速度制約および速度解の反復的な再決定、およびそれに基づくビークル速度の調整は、プロセッサが、ビークルオペレータにとって混乱を伴うことのない(nondisruptive)自然な感じのやり方で、ビークル速度を調整することを可能にし得る。変更のないナビゲーション入力が、障害物またはポイントとのビークル衝突をもたらし得るいくつかのインプリメンテーションでは、ビークル速度を調整するための、プロセッサによる決定された速度解の使用は、ビークルを障害物またはポイントとの衝突を回避する経路に沿って移動させ得、障害物またはポイントをよけて通る(skirts along)、それに沿ってスライドする、その下をくぐる、またはその上方をスライドする、その他の点ではナビゲーション入力と密接に一致する経路に沿った、ビークルによる動きをもたらすことさえもあり得る。
[0055]いくつかの実施形態では、プロセッサは、未処理(「生」)のセンサデータを使用し得、1つまたは複数の識別されたポイントについての結論を引き出さない、仮定をしない、および/または追加の決定を実行しない場合がある。例えば、プロセッサは、例えば、1つまたは複数の次元において、1つまたは複数のポイントの周りの体積(volume around the one or more points)を決定しない場合がある。別の例として、プロセッサは、1つまたは複数のポイントが静止しているか、または動いているかを決定しない場合がある。
[0056]図5は、様々な実施形態による、ビークル衝突回避の方法500を例示する。図1〜図5を参照すると、方法500は、ビークル(例えば、ビークル102、200、および402)のプロセッサ(例えば、プロセッサ220および/または同様のもの)によってインプリメントされ得る。
[0057]ビークル502(これは、ビークル102、200、または402に類似し得る)のプロセッサは、(例えば、ユーザ入力、記憶されたナビゲーションデータから、ネットワーク要素から、等)ナビゲーション命令を取得し得る。ナビゲーション命令は、速度を含み得、これは、方向成分および速さ成分を含み得る。例えば、ナビゲーション命令は、障害物140と142との間の経路504に沿って、ビークル502を誘導(direct)し得る。別の例として、ナビゲーション命令は、障害物142に向かう(または、ポイント406a、406b、...406(n)のうちの1つまたは複数に向かう)経路506に沿って、ビークル502を誘導し得る。別の例として、ナビゲーション命令は、障害物140に向かう(または、1つまたは複数のポイント404a、404b、...406(n)に向かう)経路508に沿って、ビークルを誘導し得る。経路504に沿ったビークル502による移動は、ビークル502の速度への調整が不要であり得る。
[0058]対照的に、ビークル502の速度へのいかなる調整もなしに経路506をたどることは、ビークル502と障害物142との衝突をもたらし得る。しかしながら、障害物142に(または、ポイント406a、406a、...406(n)に)関連付けられた速度制約を決定すると、プロセッサは、速度制約を満たす(例えば、それ以下である)1つまたは複数の速度解を決定するために、速度制約を使用し得る。いくつかの実施形態では、プロセッサは、ナビゲーション命令に最も密接に一致する速度解を選択し得、選択された速度解に基づいて、ビークル502の速度を調整し得る。
[0059]例えば、経路506に沿って移動するビークル502が、障害物142に近いロケーション506aに接近または到着すると、命令された速度にかかわらず、プロセッサは、(1つまたは複数の)速度制約を満たす1つまたは複数の速度解を決定し得、選択された速度解に基づいて、ビークル速度を調整し得、それによって、ビークル502が障害物142と衝突するのを防止する。いくつかの実施形態では、プロセッサは、ナビゲーション命令の方向成分に最も密接に一致する方向成分を有する速度解を選択し得る。いくつかの実施形態では、プロセッサは、ナビゲーション命令の速さ成分に最も密接に一致する速度解を選択し得る。いくつかの実施形態では、プロセッサは、ナビゲーション命令の方向成分および速さ成分に最も密接に一致する方向成分および速さ成分の両方を有する速度解を選択し得る。
[0060]例えば、選択された速度解に基づいて、プロセッサは、ビークル速度を調整し得、したがって、ビークル502に、障害物142との衝突を回避する経路をたどるように指示する(directing)。例えば、ナビゲーション命令は、さもなければビークル502を障害物142と衝突させるであろう速度を含むが、プロセッサは、ビークル502が、例えば、ロケーション506aからロケーション506bへ、障害物142を迂回して移動するように、選択された速度解に基づいて、ビークル502の速度を調整し得る。様々な実施形態では、プロセッサは、障害物またはポイントへの変化する距離および方向に基づいて、速度制約を反復的に再決定し得る。いくつかの実施形態では、ビークル502がロケーション506bに到着または接近すると、プロセッサは、(いくつかの実施形態では、ナビゲーション命令の方向成分および/または速さ成分に基づいて)別の速度解を選択し得、プロセッサは、それに応じてビークル速度を調整し得る。例えば、ロケーション506bにおいて、プロセッサは、ナビゲーション命令の方向成分および/または速さ成分に基づいて、ビークル502の速度を再び調整し得、ビークル502に、ナビゲーション命令の速度により密接に一致する速度を使用して移動するように指示する。図5が経路506に沿った2つのロケーション506aおよび506bを例示している一方で、様々な実施形態では、プロセッサは、多数の時点において、ビークル速度を調整し得る。例えば、プロセッサは、ビークルから各障害物またはポイントへの距離および方向を反復的に再決定し得、各障害物またはポイントについての速度制約を反復的に再決定し得る。プロセッサはまた、再決定された速度制約に基づいて、新しい速度解を決定し得、選択された速度解に基づいて、ビークル速度を調整し得る。
[0061]別の例として、選択された速度解に基づいて、プロセッサは、ビークル502に、経路508をたどるように指示し得、これは、ビークル502の速度へのいかなる調整もなしにたどられた場合、ビークル502と障害物140との衝突をもたらし得る。障害物140が、壁などの、ビークル502が容易によけて進むことができない障害物を含むケースでは、プロセッサは、速度制約を決定し得、ビークル502が障害物140と衝突するのを防止する速度解を選択し得る。この例では、障害物140はよけて進むことができないので、プロセッサは、ビークル502が壁面などの障害物140の表面に沿って移動するように、選択された速度解に基づいて、ビークル速度を調整し得る。したがって、いくつかの実施形態では、選択された速度解に基づいて、ビークル速度を調整することは、ビークル502に、「ウォールスライディング(wall sliding)」マニューバ(maneuver)を実行するように、または他の方法でビークル502と障害物140との衝突を回避する経路に沿って移動するように指示し得る。
[0062]いくつかの実施形態では、プロセッサは、ナビゲーション命令の方向成分および/または速さ成分に最も密接に一致する速度解を選択し得る。いくつかの実施形態では、プロセッサは、調整されたまたは結果として得られたビークル速度が、命令されたビークル速度から可能な限りスムーズに変化するように、ナビゲーション命令の方向成分および/または速さ成分に最も密接に一致する速度解を選択し得る。例えば、プロセッサは、ナビゲーション命令のビークル速度と、調整されたビークル速度との間の変化量が、ある時間期間にわたってしきい値変化量以内にとどまるように、速度解を選択し得る。いくつかの実施形態では、プロセッサは、調整された速度の方向成分および速さ成分のうちの1つまたは複数が、ある時間期間にわたってしきい値変化量以内で、ナビゲーション命令の方向成分および速さ成分から変化するように、速度解を選択し得る。
[0063]ビークル502の調整された速度の方向および速さは、ナビゲーション命令の速度の方向成分および速さ成分とは独立してそれぞれ変化し得る。例えば、プロセッサのロケーション508aにおいて開始することは、ナビゲーション命令の方向成分とは大幅に異なる方向(例えば、90°)に移動するように、ビークル502の速度を調整するとともに、ナビゲーション命令の速さ成分と非常に密接に一致し得る速さ成分を有し得、逆もまた同様である。
[0064]図6は、様々な実施形態による、ビークル衝突回避の方法600を例示する。図1〜図6を参照すると、方法600は、ビークル(例えば、ビークル102、200、402、502、および602)のプロセッサ(例えば、プロセッサ220および/または同様のもの)によってインプリメントされ得る。
[0065]ブロック602において、ビークルのプロセッサは、障害物を検出し得る。いくつかの実施形態では、ビークルのプロセッサは、ビークルの1つまたは複数のセンサを使用して、障害物を検出し得る。
[0066]ブロック604において、ビークルのプロセッサは、ビークルから障害物への距離および方向を決定し得る。いくつかの実施形態では、プロセッサは、1つまたは複数のポイントを識別し得、プロセッサは、ビークルから1つまたは複数のポイントへの距離および方向を決定し得る。
[0067]ブロック606において、プロセッサは、障害物への距離および方向に基づいて、障害物についての速度制約を決定し得る。いくつかの実施形態では、プロセッサは、1つまたは複数のポイントの各々についての速度制約を決定し得る。いくつかの実施形態では、プロセッサは、取得されたナビゲーション命令に基づいて、1つまたは複数の速度制約を決定し得、これは、(例えば、経路計画または他のナビゲーション計画動作の一部としての)高度な計画動作ではなく、(例えば、ナビゲーション命令の取得に基づく)反応的な動作(reactive operation)であり得る。いくつかの実施形態では、移動コントローラモジュール(例えば、移動コントローラモジュール222a)が、速度制約を決定し得る。いくつかの実施形態では、速度制約は、速度不等式制約を含み得る。
[0068]ブロック608において、プロセッサは、ナビゲーション命令を取得し得る。
[0069]ブロック610において、プロセッサは、(1つまたは複数の)速度制約を満たす1つまたは複数の速度解を決定し得る。いくつかの実施形態では、プロセッサは、取得されたナビゲーション命令に基づいて、1つまたは複数の速度解を決定し得、これは、(例えば、経路計画または他のナビゲーション計画動作の一部としての)高度な計画動作ではなく、(例えば、ナビゲーション命令の取得に基づく)反応的な動作であり得る。いくつかの実施形態では、移動コントローラモジュール(例えば、飛行コントローラモジュール222a)は、(1つまたは複数の)速度制約を満たす1つまたは複数の速度解を決定し得る。
[0070]ブロック612において、プロセッサは、1つまたは複数の速度解の中から、ナビゲーション命令に最も密接に一致する決定された速度解を選択し得る。いくつかの実施形態では、プロセッサは、ナビゲーション命令と、ビークルと障害物の間の距離およびビークルから障害物との方向のうちのいずれかまたは両方とに基づいて、速度解を選択し得る。
[0071]ブロック614において、プロセッサは、選択された速度解に基づいて、ビークル速度を調整し得る。
[0072]プロセッサは、ブロック602において、再び障害物を検出し得る。様々なインプリメンテーションでは、プロセッサは、同じ障害物(例えば、障害物140および142)に対してブロック602〜614の動作を繰り返し実行し得、プロセッサが、1つまたは複数の速度制約を更新または調整することと、更新または調整された(1つまたは複数の)速度制約に従って、ビークル速度を調整することとを可能にする。
[0073]図7は、様々な実施形態による、ビークル衝突回避の方法700を例示する。図1〜図7を参照すると、方法700は、ビークル(例えば、ビークル102、200、402、502、および602)のプロセッサ(例えば、プロセッサ220および/または同様のもの)によってインプリメントされ得る。ブロック608〜614において、デバイスプロセッサは、方法600の同様に番号付けられたブロックの動作を実行し得る。
[0074]ブロック702において、ビークルのプロセッサは、1つまたは複数のポイントを含むセンサデータを受信し得る。いくつかの実施形態では、プロセッサは、カメラからの未処理の画像データなどの、未処理または生のセンサデータを受信し得、センサデータにおいて表される物体を認識または識別するために、受信された生のセンサデータに対してさらなる処理を実行しない場合がある。例えば、プロセッサは、センサの視野内の物体を認識する、定義する、位置を特定する、または他の方法で特徴付けるために、センサデータを使用して決定を実行しない場合がある。いくつかの実施形態では、プロセッサは、センサデータによって表される物体を識別するために、アルゴリズムまたは数式に未処理のセンサデータを適用しない場合がある。
[0075]検出された障害物のサイズ、形状、および他の特徴を決定することなどの、センサデータ内の障害物を特徴付けることは、計算集約的であり得る。プロセッサへの計算の負担を低減させるために、いくつかの実施形態では、プロセッサは、センサの視野内の障害物を検出するために(例えば、物体を検出するために、または障害物のサイズ、形状、または他の特徴を決定するために)、生のセンサデータに関連した計算などの、追加の決定を実行することなく、1つまたは複数のポイント(例えば、障害物140上に例示されたポイント404(1−n)および障害物142上に例示されたポイント406(1−n))を識別し得る。いくつかの実施形態では、プロセッサは、未処理(生)のセンサデータを使用し得、1つまたは複数の識別されたポイントについての結論を引き出さない、仮定をしない、および/または追加の決定、計算を実行しない場合がある。例えば、プロセッサは、例えば、1つまたは複数の次元において、1つまたは複数のポイントの周りの体積、表面または他の幾何学的なパラメータを決定しない場合がある。別の例として、プロセッサは、1つまたは複数のポイントが静止しているか、または動いているかを決定しない場合がある。
[0076]ブロック704において、ビークルのプロセッサは、ビークルから1つまたは複数のポイントの各々への距離および方向を決定し得る。例えば、プロセッサは、カメラを使用して画像を受信し得、画像における1つまたは複数のポイントを識別し得る。いくつかのインプリメンテーションでは、ポイントは、画像におけるピクセルに対応し得る。いくつかのインプリメンテーションでは、プロセッサは、画像における各ピクセルにつき1つのポイントなど、非常に多くのポイントを識別または選択し得る。いくつかの実施形態では、プロセッサは、距離および方向を決定するために、より少ないポイントを識別する/選択することによって、処理負担を低減させ得る。いくつかの実施形態では、プロセッサは、画像の解像度を低減させることによって、処理負担を低減させ得、それによって、ポイントをそれから識別するためのピクセル数を低減させる。
[0077]ブロック706において、プロセッサは、1つのポイントまたは複数のポイントへの決定された距離および方向に基づいて、識別された1つまたは複数のポイントの各々についての速度制約を決定し得る。いくつかの実施形態では、プロセッサは、取得されたナビゲーション命令に基づいて、識別された1つまたは複数のポイントの各々についての速度制約を決定し得る。取得されたナビゲーション命令は、(例えば、経路計画または他のナビゲーション計画動作の一部としての)高度な計画動作ではなく、(例えば、ナビゲーション命令の取得に基づく)反応的な動作であり得る。いくつかの実施形態では、移動コントローラモジュール(例えば、飛行コントローラモジュール222a)が、速度制約を決定し得る。いくつかの実施形態では、各速度制約は、速度不等式制約を含み得る。
[0078]様々な実施形態は、ビークルのプロセッサが物体との衝突を回避することを可能にし、それによって、ビークルの動作を改善する。様々な実施形態はまた、ナビゲーション命令のビークル速度に密接に一致するように(いくつかのケースでは、しきい値変化量以内に)ビークル速度を調整することによって、ビークルの動作を改善する。様々な実施形態はまた、1つまたは複数のポイントを障害物に割り当てることと、ポイントのうちの1つまたは複数に割り当てられる速度制約を決定することとによって、ビークルのプロセッサへの計算の負担を低減させることによって、ビークルの動作を改善する。
[0079]例示および説明された様々な実施形態は、特許請求の範囲の様々な特徴を例示するために、単に例として提供された。しかしながら、任意の所与の実施形態に関して説明および示された特徴は、関連する実施形態に必ずしも限定されるわけではなく、説明および示された他の実施形態とともに使用され得るか、それらと組み合わされ得る。さらに、特許請求の範囲は、任意の1つの例となる実施形態によって限定されるようには意図されない。例えば、方法400、500、600、および700の動作のうちの1つまたは複数は、方法400、500、600、700の1つまたは複数の動作に置き換えられ得るか、またはそれらと組み合わされ得、逆もまた同様である。
[0080]前述の方法の説明およびプロセスフロー図は、単に例示的な例として提供されており、様々な実施形態の動作が、提示された順序で実行されなければならないことを暗示または必要とするように意図されるものでない。当業者によって理解されるように、前述の実施形態における動作の順序は、任意の順序で実行され得る。「その後に(thereafter)」、「その後(then)」、「次に(next)」、等の用語は、動作の順序を限定するように意図されるものではなく、これらの用語は、方法の説明を通じて読者を導くために使用される。さらに、例えば、「a」、「an」または「the」という冠詞を使用した、単数形の請求項の要素への任意の参照は、その要素を単数形に限定するように解釈されるべきではない。
[0081]ここで開示された実施形態に関連して説明された様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズム動作は、電子ハードウェア、コンピュータソフトウェア、または両方の組合せとしてインプリメントされ得る。ハードウェアおよびソフトウェアのこの互換性を明確に例示するために、様々な例示的な構成要素、ブロック、モジュール、回路、および動作が、概してそれらの機能の観点から上記で説明されてきた。このような機能が、ハードウェアとしてインプリメントされるか、あるいはソフトウェアとしてインプリメントされるかは、特定のアプリケーションおよびシステム全体に課せられる設計制約に依存する。当業者は、特定のアプリケーションごとに多様な方法において、説明された機能をインプリメントし得るが、このような実施形態の決定は、特許請求の範囲から逸脱を引き起こしていると解釈されるべきでない。
[0082]ここで開示された態様に関連して説明された様々な例示的なロジック、論理ブロック、モジュール、および回路をインプリメントするために使用されるハードウェアは、汎用プロセッサ、デジタルシグナルプロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)または他のプログラマブル論理デバイス、個別ゲートまたはトランジスタロジック、個別ハードウェア構成要素、あるいはここで説明された機能を実行するように設計されたこれらの任意の組合せを用いてインプリメントまたは実行され得る。汎用プロセッサは、マイクロプロセッサであり得るが、代替として、このプロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、またはステートマシン(state machine)であり得る。プロセッサはまた、受信機スマートオブジェクト(receiver smart objects)の組合せ、例えば、DSPとマイクロプロセッサの組合せ、複数のマイクロプロセッサ、DSPコアと連携した1つまたは複数のマイクロプロセッサ、あるいはその他任意のこのような構成としてインプリメントされ得る。代替として、いくつかの動作または方法は、所与の機能に固有である回路によって実行され得る。
[0083]1つまたは複数の態様では、説明された機能は、ハードウェア、ソフトウェア、ファームウェア、またはこれらの任意の組合せでインプリメントされ得る。ソフトウェアでインプリメントされる場合、これら機能は、非一時的なコンピュータ可読記憶媒体または非一時的なプロセッサ可読記憶媒体上で、1つまたは複数の命令またはコードとして記憶され得る。ここで開示された方法またはアルゴリズムの動作は、非一時的なコンピュータ可読またはプロセッサ可読記憶媒体上に存在し得るプロセッサ実行可能ソフトウェアモジュールまたはプロセッサ実行可能命令において具現化され得る。非一時的なコンピュータ可読またはプロセッサ可読記憶媒体は、コンピュータまたはプロセッサによってアクセスされ得る任意の記憶媒体であり得る。限定ではなく例として、このような非一時的なコンピュータ可読またはプロセッサ可読記憶媒体は、RAM、ROM、EEPROM(登録商標)、FLASHメモリ、CD−ROMまたは他の光ディスク記憶装置、磁気ディスク記憶装置または他の磁気記憶スマートオブジェクト、あるいは命令またはデータ構造の形で所望のプログラムコードを記憶するために使用され得、かつコンピュータによってアクセスされ得るその他任意の媒体を含み得る。ここで使用される場合、ディスク(disk)およびディスク(disc)は、コンパクトディスク(CD)、レーザーディスク(登録商標)、光ディスク、デジタル多目的ディスク(DVD)、フロッピー(登録商標)ディスク、およびブルーレイ(登録商標)ディスクを含み、ここでディスク(disks)は、通常磁気的にデータを再生し、一方ディスク(discs)は、レーザーを用いて光学的にデータを再生する。上記の組合せもまた、非一時的なコンピュータ可読およびプロセッサ可読媒体の範囲内に含まれる。加えて、方法またはアルゴリズムの動作は、非一時的なプロセッサ可読記憶媒体および/またはコンピュータ可読記憶媒体上で、コードおよび/または命令の1つまたは任意の組合せまたはセットとして存在し得、これは、コンピュータプログラム製品に組み込まれ得る。
[0084]開示された実施形態の前述の説明は、いかなる当業者であっても、特許請求の範囲を製造または使用することを可能にするように提供される。これら実施形態への様々な修正は、当業者にとって容易に明らかとなり、ここで定義した一般原理は、特許請求の範囲の趣旨または範囲から逸脱することなく、他の実施形態に適用され得る。したがって、本開示は、ここで示された実施形態に限定されるようには意図されず、以下の特許請求の範囲およびここで開示された原理および新規の特徴に合致する最も広い範囲を与えられることとなる。
[0084]開示された実施形態の前述の説明は、いかなる当業者であっても、特許請求の範囲を製造または使用することを可能にするように提供される。これら実施形態への様々な修正は、当業者にとって容易に明らかとなり、ここで定義した一般原理は、特許請求の範囲の趣旨または範囲から逸脱することなく、他の実施形態に適用され得る。したがって、本開示は、ここで示された実施形態に限定されるようには意図されず、以下の特許請求の範囲およびここで開示された原理および新規の特徴に合致する最も広い範囲を与えられることとなる。
以下に本願の出願当初の特許請求の範囲に記載された発明を付記する。
[C1] ビークル衝突回避の方法であって、
1つまたは複数のポイントを備えるセンサデータを受信することと、
ビークルから前記1つまたは複数のポイントへの距離および方向を決定することと、
前記ビークルから前記1つまたは複数のポイントの各々への前記決定された距離および方向に基づいて、前記1つまたは複数のポイントの各々についての速度制約を決定することと、
ビークルナビゲーション命令に基づいて、前記決定された速度制約を満たす1つまたは複数の速度解を決定することと、
前記ビークルナビゲーション命令に基づいて、前記決定された1つまたは複数の速度解から速度解を選択することと、
前記選択された速度解に基づいて、ビークル速度を調整することと
を備える方法。
[C2] センサデータを受信することは、未処理のセンサデータを受信することを備える、C1に記載の方法。
[C3] 前記1つまたは複数のポイントの各々についての前記速度制約は、速度不等式制約を備える、C1に記載の方法。
[C4] 前記ビークルから前記1つまたは複数のポイントへの前記距離および前記方向を決定することは、
前記ビークルから障害物への距離および方向を決定すること
を備える、C3に記載の方法。
[C5] 前記障害物は、前記1つまたは複数のポイントによって表される障害物を備える、C4に記載の方法。
[C6] 前記ビークルから前記1つまたは複数のポイントの各々への前記決定された距離および方向に基づいて、前記1つまたは複数のポイントの各々についての速度制約を決定することは、
前記ビークルから前記1つまたは複数のポイントによって表される障害物への前記決定された距離および方向に基づいて、前記1つまたは複数のポイントの各々についての速度制約を決定すること
を備える、C1に記載の方法。
[C7] 前記ビークルナビゲーション命令は、方向成分を含み、
前記ビークルナビゲーション命令に基づいて、前記決定された1つまたは複数の速度解から前記速度解を選択することは、前記ビークルナビゲーション命令の前記方向成分に最も密接に一致する方向成分を有する前記速度解を選択することを備える、
C1に記載の方法。
[C8] 前記ビークルナビゲーション命令は、速さ成分を含み、
前記ビークルナビゲーション命令に基づいて、前記決定された1つまたは複数の速度解から前記速度解を選択することは、前記ビークルナビゲーション命令の前記速さ成分に最も密接に一致する速さ成分を有する前記速度解を選択することを備える、
C1に記載の方法。
[C9] ビークルであって、
1つまたは複数のポイントを備えるセンサデータを受信することと、
前記ビークルから前記1つまたは複数のポイントへの距離および方向を決定することと、
前記ビークルから前記1つまたは複数のポイントの各々への前記決定された距離および方向に基づいて、前記1つまたは複数のポイントの各々についての速度制約を決定することと、
ビークルナビゲーション命令に基づいて、前記決定された速度制約を満たす1つまたは複数の速度解を決定することと、
前記ビークルナビゲーション命令に基づいて、前記決定された1つまたは複数の速度解から速度解を選択することと、
前記選択された速度解に基づいて、ビークル速度を調整することと
を行うためのプロセッサ実行可能命令を用いて構成されたプロセッサ
を備えるビークル。
[C10] 前記プロセッサは、未処理のセンサデータを備えるセンサデータセンサデータを受信するためのプロセッサ実行可能命令を用いてさらに構成される、C9に記載のビークル。
[C11] 前記プロセッサは、前記1つまたは複数のポイントの各々についての前記速度制約が、速度不等式制約を備えるように、プロセッサ実行可能命令を用いてさらに構成される、C9に記載のビークル。
[C12] 前記プロセッサは、
前記ビークルから障害物への距離および方向を決定すること
を行うためのプロセッサ実行可能命令を用いてさらに構成される、C11に記載のビークル。
[C13] 前記プロセッサは、前記障害物が、前記1つまたは複数のポイントによって表される障害物を備えるように、プロセッサ実行可能命令を用いてさらに構成される、C12に記載のビークル。
[C14] 前記プロセッサは、
前記ビークルから前記1つまたは複数のポイントによって表される障害物への前記決定された距離および方向に基づいて、前記1つまたは複数のポイントの各々についての速度制約を決定すること
を行うためのプロセッサ実行可能命令を用いてさらに構成される、C9に記載のビークル。
[C15] 前記プロセッサは、前記ビークルナビゲーション命令が方向成分を含むように、プロセッサ実行可能命令を用いてさらに構成され、
前記プロセッサは、前記ビークルナビゲーション命令の前記方向成分に最も密接に一致する方向成分を有する前記速度解を選択するためのプロセッサ実行可能命令を用いてさらに構成される、
C9に記載のビークル。
[C16] 前記プロセッサは、前記ビークルナビゲーション命令が速さ成分を含むように、プロセッサ実行可能命令を用いてさらに構成され、
前記プロセッサは、前記ビークルナビゲーション命令の前記速さ成分に最も密接に一致する速さ成分を有する前記速度解を選択することによって、前記ビークルナビゲーション命令に基づいて、前記速度解を選択するためのプロセッサ実行可能命令を用いてさらに構成される、
C9に記載のビークル。
[C17] ビークルであって、
1つまたは複数のポイントを備えるセンサデータを受信するための手段と、
前記ビークルから前記1つまたは複数のポイントへの距離および方向を決定するための手段と、
前記ビークルから前記1つまたは複数のポイントの各々への前記決定された距離および方向に基づいて、前記1つまたは複数のポイントの各々についての速度制約を決定するための手段と、
ビークルナビゲーション命令に基づいて、前記決定された速度制約を満たす1つまたは複数の速度解を決定するための手段と、
前記ビークルナビゲーション命令に基づいて、前記決定された1つまたは複数の速度解から速度解を選択するための手段と、
前記選択された速度解に基づいて、ビークル速度を調整するための手段と
を備えるビークル。
[C18] ビークルのプロセッサに、
1つまたは複数のポイントを備えるセンサデータを受信することと、
前記ビークルから前記1つまたは複数のポイントへの距離および方向を決定することと、
前記ビークルから前記1つまたは複数のポイントの各々への前記決定された距離および方向に基づいて、前記1つまたは複数のポイントの各々についての速度制約を決定することと、
ビークルナビゲーション命令に基づいて、前記決定された速度制約を満たす1つまたは複数の速度解を決定することと、
前記ビークルナビゲーション命令に基づいて、前記決定された1つまたは複数の速度解から速度解を選択することと、
前記選択された速度解に基づいて、ビークル速度を調整することと
を備える動作を実行させるように構成されたプロセッサ実行可能命令を記憶した非一時的なプロセッサ可読記憶媒体。
[C19] 前記記憶されたプロセッサ実行可能ソフトウェア命令は、前記ビークルの前記プロセッサに、センサデータを受信することが、未処理のセンサデータを受信することを備えるように、動作を実行させるように構成される、C18に記載の非一時的なプロセッサ可読記憶媒体。
[C20] 前記記憶されたプロセッサ実行可能ソフトウェア命令は、前記ビークルの前記プロセッサに、前記1つまたは複数のポイントの各々についての前記速度制約が、速度不等式制約を備えるように、動作を実行させるように構成される、C18に記載の非一時的なプロセッサ可読記憶媒体。
[C21] 前記記憶されたプロセッサ実行可能ソフトウェア命令は、前記ビークルの前記プロセッサに、前記ビークルから前記1つまたは複数のポイントへの前記距離および前記方向を決定することが、
前記ビークルから障害物への距離および方向を決定すること
を備えるように、動作を実行させるように構成される、C20に記載の非一時的なプロセッサ可読記憶媒体。
[C22] 前記記憶されたプロセッサ実行可能ソフトウェア命令は、前記ビークルの前記プロセッサに、前記障害物が、前記1つまたは複数のポイントによって表される障害物を備えるように、動作を実行させるように構成される、C21に記載の非一時的なプロセッサ可読記憶媒体。
[C23] 前記記憶されたプロセッサ実行可能ソフトウェア命令は、前記ビークルの前記プロセッサに、前記ビークルから前記1つまたは複数のポイントの各々への前記決定された距離および方向に基づいて、前記1つまたは複数のポイントの各々についての速度制約を決定することが、
前記ビークルから前記1つまたは複数のポイントによって表される障害物への前記決定された距離および方向に基づいて、前記1つまたは複数のポイントの各々についての速度制約を決定すること
を備えるように、動作を実行させるように構成される、C18に記載の非一時的なプロセッサ可読記憶媒体。
[C24] 前記記憶されたプロセッサ実行可能ソフトウェア命令は、前記ビークルの前記プロセッサに、
前記ビークルナビゲーション命令が方向成分を含むように、および
前記ビークルナビゲーション命令に基づいて、前記決定された1つまたは複数の速度解から前記速度解を選択することが、前記ビークルナビゲーション命令の前記方向成分に最も密接に一致する方向成分を有する前記速度解を選択することを備えるように、
動作を実行させるように構成される、C18に記載の非一時的なプロセッサ可読記憶媒体。
[C25] 前記記憶されたプロセッサ実行可能ソフトウェア命令は、前記ビークルの前記プロセッサに、
前記ビークルナビゲーション命令が速さ成分を含むように、および
前記ビークルナビゲーション命令に基づいて、前記決定された1つまたは複数の速度解から前記速度解を選択することが、前記ビークルナビゲーション命令の前記速さ成分に最も密接に一致する速さ成分を有する前記速度解を選択することを備えるように、
動作を実行させるように構成される、C18に記載の非一時的なプロセッサ可読記憶媒体。

Claims (25)

  1. ビークル衝突回避の方法であって、
    1つまたは複数のポイントを備えるセンサデータを受信することと、
    ビークルから前記1つまたは複数のポイントへの距離および方向を決定することと、
    前記ビークルから前記1つまたは複数のポイントの各々への前記決定された距離および方向に基づいて、前記1つまたは複数のポイントの各々についての速度制約を決定することと、
    ビークルナビゲーション命令に基づいて、前記決定された速度制約を満たす1つまたは複数の速度解を決定することと、
    前記ビークルナビゲーション命令に基づいて、前記決定された1つまたは複数の速度解から速度解を選択することと、
    前記選択された速度解に基づいて、ビークル速度を調整することと
    を備える方法。
  2. センサデータを受信することは、未処理のセンサデータを受信することを備える、請求項1に記載の方法。
  3. 前記1つまたは複数のポイントの各々についての前記速度制約は、速度不等式制約を備える、請求項1に記載の方法。
  4. 前記ビークルから前記1つまたは複数のポイントへの前記距離および前記方向を決定することは、
    前記ビークルから障害物への距離および方向を決定すること
    を備える、請求項3に記載の方法。
  5. 前記障害物は、前記1つまたは複数のポイントによって表される障害物を備える、請求項4に記載の方法。
  6. 前記ビークルから前記1つまたは複数のポイントの各々への前記決定された距離および方向に基づいて、前記1つまたは複数のポイントの各々についての速度制約を決定することは、
    前記ビークルから前記1つまたは複数のポイントによって表される障害物への前記決定された距離および方向に基づいて、前記1つまたは複数のポイントの各々についての速度制約を決定すること
    を備える、請求項1に記載の方法。
  7. 前記ビークルナビゲーション命令は、方向成分を含み、
    前記ビークルナビゲーション命令に基づいて、前記決定された1つまたは複数の速度解から前記速度解を選択することは、前記ビークルナビゲーション命令の前記方向成分に最も密接に一致する方向成分を有する前記速度解を選択することを備える、
    請求項1に記載の方法。
  8. 前記ビークルナビゲーション命令は、速さ成分を含み、
    前記ビークルナビゲーション命令に基づいて、前記決定された1つまたは複数の速度解から前記速度解を選択することは、前記ビークルナビゲーション命令の前記速さ成分に最も密接に一致する速さ成分を有する前記速度解を選択することを備える、
    請求項1に記載の方法。
  9. ビークルであって、
    1つまたは複数のポイントを備えるセンサデータを受信することと、
    前記ビークルから前記1つまたは複数のポイントへの距離および方向を決定することと、
    前記ビークルから前記1つまたは複数のポイントの各々への前記決定された距離および方向に基づいて、前記1つまたは複数のポイントの各々についての速度制約を決定することと、
    ビークルナビゲーション命令に基づいて、前記決定された速度制約を満たす1つまたは複数の速度解を決定することと、
    前記ビークルナビゲーション命令に基づいて、前記決定された1つまたは複数の速度解から速度解を選択することと、
    前記選択された速度解に基づいて、ビークル速度を調整することと
    を行うためのプロセッサ実行可能命令を用いて構成されたプロセッサ
    を備えるビークル。
  10. 前記プロセッサは、未処理のセンサデータを備えるセンサデータセンサデータを受信するためのプロセッサ実行可能命令を用いてさらに構成される、請求項9に記載のビークル。
  11. 前記プロセッサは、前記1つまたは複数のポイントの各々についての前記速度制約が、速度不等式制約を備えるように、プロセッサ実行可能命令を用いてさらに構成される、請求項9に記載のビークル。
  12. 前記プロセッサは、
    前記ビークルから障害物への距離および方向を決定すること
    を行うためのプロセッサ実行可能命令を用いてさらに構成される、請求項11に記載のビークル。
  13. 前記プロセッサは、前記障害物が、前記1つまたは複数のポイントによって表される障害物を備えるように、プロセッサ実行可能命令を用いてさらに構成される、請求項12に記載のビークル。
  14. 前記プロセッサは、
    前記ビークルから前記1つまたは複数のポイントによって表される障害物への前記決定された距離および方向に基づいて、前記1つまたは複数のポイントの各々についての速度制約を決定すること
    を行うためのプロセッサ実行可能命令を用いてさらに構成される、請求項9に記載のビークル。
  15. 前記プロセッサは、前記ビークルナビゲーション命令が方向成分を含むように、プロセッサ実行可能命令を用いてさらに構成され、
    前記プロセッサは、前記ビークルナビゲーション命令の前記方向成分に最も密接に一致する方向成分を有する前記速度解を選択するためのプロセッサ実行可能命令を用いてさらに構成される、
    請求項9に記載のビークル。
  16. 前記プロセッサは、前記ビークルナビゲーション命令が速さ成分を含むように、プロセッサ実行可能命令を用いてさらに構成され、
    前記プロセッサは、前記ビークルナビゲーション命令の前記速さ成分に最も密接に一致する速さ成分を有する前記速度解を選択することによって、前記ビークルナビゲーション命令に基づいて、前記速度解を選択するためのプロセッサ実行可能命令を用いてさらに構成される、
    請求項9に記載のビークル。
  17. ビークルであって、
    1つまたは複数のポイントを備えるセンサデータを受信するための手段と、
    前記ビークルから前記1つまたは複数のポイントへの距離および方向を決定するための手段と、
    前記ビークルから前記1つまたは複数のポイントの各々への前記決定された距離および方向に基づいて、前記1つまたは複数のポイントの各々についての速度制約を決定するための手段と、
    ビークルナビゲーション命令に基づいて、前記決定された速度制約を満たす1つまたは複数の速度解を決定するための手段と、
    前記ビークルナビゲーション命令に基づいて、前記決定された1つまたは複数の速度解から速度解を選択するための手段と、
    前記選択された速度解に基づいて、ビークル速度を調整するための手段と
    を備えるビークル。
  18. ビークルのプロセッサに、
    1つまたは複数のポイントを備えるセンサデータを受信することと、
    前記ビークルから前記1つまたは複数のポイントへの距離および方向を決定することと、
    前記ビークルから前記1つまたは複数のポイントの各々への前記決定された距離および方向に基づいて、前記1つまたは複数のポイントの各々についての速度制約を決定することと、
    ビークルナビゲーション命令に基づいて、前記決定された速度制約を満たす1つまたは複数の速度解を決定することと、
    前記ビークルナビゲーション命令に基づいて、前記決定された1つまたは複数の速度解から速度解を選択することと、
    前記選択された速度解に基づいて、ビークル速度を調整することと
    を備える動作を実行させるように構成されたプロセッサ実行可能命令を記憶した非一時的なプロセッサ可読記憶媒体。
  19. 前記記憶されたプロセッサ実行可能ソフトウェア命令は、前記ビークルの前記プロセッサに、センサデータを受信することが、未処理のセンサデータを受信することを備えるように、動作を実行させるように構成される、請求項18に記載の非一時的なプロセッサ可読記憶媒体。
  20. 前記記憶されたプロセッサ実行可能ソフトウェア命令は、前記ビークルの前記プロセッサに、前記1つまたは複数のポイントの各々についての前記速度制約が、速度不等式制約を備えるように、動作を実行させるように構成される、請求項18に記載の非一時的なプロセッサ可読記憶媒体。
  21. 前記記憶されたプロセッサ実行可能ソフトウェア命令は、前記ビークルの前記プロセッサに、前記ビークルから前記1つまたは複数のポイントへの前記距離および前記方向を決定することが、
    前記ビークルから障害物への距離および方向を決定すること
    を備えるように、動作を実行させるように構成される、請求項20に記載の非一時的なプロセッサ可読記憶媒体。
  22. 前記記憶されたプロセッサ実行可能ソフトウェア命令は、前記ビークルの前記プロセッサに、前記障害物が、前記1つまたは複数のポイントによって表される障害物を備えるように、動作を実行させるように構成される、請求項21に記載の非一時的なプロセッサ可読記憶媒体。
  23. 前記記憶されたプロセッサ実行可能ソフトウェア命令は、前記ビークルの前記プロセッサに、前記ビークルから前記1つまたは複数のポイントの各々への前記決定された距離および方向に基づいて、前記1つまたは複数のポイントの各々についての速度制約を決定することが、
    前記ビークルから前記1つまたは複数のポイントによって表される障害物への前記決定された距離および方向に基づいて、前記1つまたは複数のポイントの各々についての速度制約を決定すること
    を備えるように、動作を実行させるように構成される、請求項18に記載の非一時的なプロセッサ可読記憶媒体。
  24. 前記記憶されたプロセッサ実行可能ソフトウェア命令は、前記ビークルの前記プロセッサに、
    前記ビークルナビゲーション命令が方向成分を含むように、および
    前記ビークルナビゲーション命令に基づいて、前記決定された1つまたは複数の速度解から前記速度解を選択することが、前記ビークルナビゲーション命令の前記方向成分に最も密接に一致する方向成分を有する前記速度解を選択することを備えるように、
    動作を実行させるように構成される、請求項18に記載の非一時的なプロセッサ可読記憶媒体。
  25. 前記記憶されたプロセッサ実行可能ソフトウェア命令は、前記ビークルの前記プロセッサに、
    前記ビークルナビゲーション命令が速さ成分を含むように、および
    前記ビークルナビゲーション命令に基づいて、前記決定された1つまたは複数の速度解から前記速度解を選択することが、前記ビークルナビゲーション命令の前記速さ成分に最も密接に一致する速さ成分を有する前記速度解を選択することを備えるように、
    動作を実行させるように構成される、請求項18に記載の非一時的なプロセッサ可読記憶媒体。
JP2019524326A 2016-11-14 2017-09-29 ビークル衝突回避 Active JP7173966B2 (ja)

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 (3)

Publication Number Publication Date
JP2019537140A true JP2019537140A (ja) 2019-12-19
JP2019537140A5 JP2019537140A5 (ja) 2020-10-08
JP7173966B2 JP7173966B2 (ja) 2022-11-16

Family

ID=62108476

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019524326A Active JP7173966B2 (ja) 2016-11-14 2017-09-29 ビークル衝突回避

Country Status (9)

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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021261058A1 (ja) * 2020-06-26 2021-12-30 パナソニックIpマネジメント株式会社 情報処理方法、情報処理端末、及び、情報処理システム

Families Citing this family (8)

* 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
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
JPS6442711A (en) * 1987-08-10 1989-02-15 Nissan Motor Autonomous running vehicle controller
US20060058931A1 (en) * 2004-09-15 2006-03-16 Honeywell International Inc. Collision avoidance involving radar feedback
US20120265380A1 (en) * 2011-04-13 2012-10-18 California Institute Of Technology Target Trailing with Safe Navigation with colregs for Maritime Autonomous Surface Vehicles
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

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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 李慧盈 立体视觉主动安全辅助驾驶方法
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 株式会社日立製作所 自律走行車両、及び自律走行システム
WO2016033795A1 (en) 2014-09-05 2016-03-10 SZ DJI Technology Co., Ltd. Velocity control for an unmanned aerial vehicle
CN104199034A (zh) * 2014-09-19 2014-12-10 黄国鹏 基于雷达传感器的汽车防撞方法和装置
US9896202B2 (en) * 2014-12-03 2018-02-20 X Development Llc Systems and methods for reliable relative navigation and autonomous following between unmanned aerial vehicle and a target object
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
JPS6442711A (en) * 1987-08-10 1989-02-15 Nissan Motor Autonomous running vehicle controller
US20060058931A1 (en) * 2004-09-15 2006-03-16 Honeywell International Inc. Collision avoidance involving radar feedback
US20120265380A1 (en) * 2011-04-13 2012-10-18 California Institute Of Technology Target Trailing with Safe Navigation with colregs for Maritime Autonomous Surface Vehicles
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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021261058A1 (ja) * 2020-06-26 2021-12-30 パナソニックIpマネジメント株式会社 情報処理方法、情報処理端末、及び、情報処理システム

Also Published As

Publication number Publication date
CN109906416A (zh) 2019-06-18
KR102476681B1 (ko) 2022-12-09
JP7173966B2 (ja) 2022-11-16
SG11201902738PA (en) 2019-05-30
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
JP7173966B2 (ja) ビークル衝突回避
US11353892B2 (en) Drop-off location planning for delivery vehicle
EP3735622B1 (en) Adjustable object avoidance proximity threshold of a robotic vehicle based on presence of detected payload(s)
US20200026720A1 (en) Construction and update of elevation maps
EP3428766B1 (en) Multi-sensor environmental mapping
EP3735621B1 (en) Adjustable object avoidance proximity threshold based on classification of detected objects
US20200117210A1 (en) Auto-Exploration Control of a Robotic Vehicle
WO2019040179A1 (en) LANDING CONTROL OF AERIAL ROBOTIC VEHICLE USING THREE DIMENSIONAL FIELD CARDS GENERATED BY ODOMETRY OF VISUAL INERTIA
US20200365041A1 (en) Identifying landing zones for landing of a robotic vehicle
CN114521248A (zh) 信息处理设备、信息处理方法和程序
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
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190723

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200831

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210817

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210929

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220324

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20220809

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220922

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20220922

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20220930

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20221004

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20221025

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221104

R150 Certificate of patent or registration of utility model

Ref document number: 7173966

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150