JP7355930B2 - 自動運転システム内の慣性ナビゲーションシステムの時間決定 - Google Patents

自動運転システム内の慣性ナビゲーションシステムの時間決定 Download PDF

Info

Publication number
JP7355930B2
JP7355930B2 JP2022519715A JP2022519715A JP7355930B2 JP 7355930 B2 JP7355930 B2 JP 7355930B2 JP 2022519715 A JP2022519715 A JP 2022519715A JP 2022519715 A JP2022519715 A JP 2022519715A JP 7355930 B2 JP7355930 B2 JP 7355930B2
Authority
JP
Japan
Prior art keywords
data
time information
gnss
sensor data
sensor
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.)
Active
Application number
JP2022519715A
Other languages
English (en)
Other versions
JP2022550542A (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.)
Baidu com Times Technology Beijing Co Ltd
Baidu USA LLC
Original Assignee
Baidu com Times Technology Beijing Co Ltd
Baidu USA LLC
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 Baidu com Times Technology Beijing Co Ltd, Baidu USA LLC filed Critical Baidu com Times Technology Beijing Co Ltd
Publication of JP2022550542A publication Critical patent/JP2022550542A/ja
Application granted granted Critical
Publication of JP7355930B2 publication Critical patent/JP7355930B2/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 or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • G05D1/0278Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using satellite positioning signals, e.g. GPS
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/0088Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot 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 or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • 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/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/027Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising intertial navigation means, e.g. azimuth detector
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0652Synchronisation among time division multiple access [TDMA] nodes, e.g. time triggered protocol [TTP]

Description

本開示の実施形態は、一般に、自動運転車両の操作に関する。より具体的には、本開示の実施形態は、自動運転システム内の慣性ナビゲーションシステムの時間決定に関する。
自動運転モード(例えば、無人運転)で運転している車両は、乗員、特に運転者をいくつかの運転関連の責任から解放することができる。自動運転モードで運転している場合、車両が車載用センサを使用して様々な場所に移動できるため、車両は、ヒューマンマシンインタラクションが最小限に抑えられた場合または乗客がいない場合にも、走行することができる。車載処理システムは、センサデータ(グローバルナビゲーション衛星システムデータ、慣性測定データなど)を使用して車両の概略位置を提供することができる。
本開示の実施形態は、自動運転車両(ADV)を操作するための方法、慣性ナビゲーションシステム(INS)、および非一時的な機械可読媒体を提供する。
第一様態によれば、本開示のいくつかの実施形態は、自動運転車両(ADV)を操作するための方法を提供する。この方法は、慣性ナビゲーションシステム(INS)の処理装置を利用して、グローバルナビゲーション衛星システム(GNSS)データが利用できないと決定することであって、INSがADVの複数の位置に取り付けられた複数のセンサに接続されることと、時間情報の予備ソースを識別することと、時間情報の予備ソースから時間情報を検索することと、時間情報の予備ソースからの時間情報を使用して第一センサデータを同期させることであって、第一センサデータがセンサの少なくとも1つから取得されることと、時間情報を使用して同期された第一センサデータをホストシステムに送信することであって、ホストシステムが、ADVの周囲の運転環境を感知し、運転環境に基づいて軌跡を計画し、軌跡に基づいて運転環境でのADVのナビゲーションを制御するように構成されることと、を含む。
第二様態によれば、本開示のいくつかの実施形態は、慣性ナビゲーションシステム(INS)を提供する。このシステムは、自動運転車両(ADV)の複数の位置に取り付けられた複数のセンサに接続されたセンサインターフェースと、ADVを操作するホストシステムに接続されたホストインターフェースと、センサインターフェースおよびホストインターフェースに接続された処理装置と、を含み、この処理装置は、グローバルナビゲーション衛星システム(GNSS)データがINSにとって利用できないと決定することと、時間情報の予備ソースを識別することと、時間情報の予備ソースから時間情報を検索することと、時間情報の予備ソースからの時間情報を使用して第一センサデータを同期させることであって、第一センサデータがセンサの少なくとも1つから取得されることと、時間情報を使用して同期された第一センサデータをホストシステムに送信することであって、ホストシステムが、ADVの周囲の運転環境を感知し、運転環境に基づいて軌跡を計画し、軌跡に基づいて運転環境でのADVのナビゲーションを制御するように構成されることと、を実行するように構成される。
第三様態によれば、本開示のいくつかの実施形態は、命令を記憶する非一時的な機械可読媒体を提供する。この機械可読媒体は、この命令がプロセッサによって実行されると、このプロセッサに自動運転車両(ADV)の操作を実行させるものであり、この操作は、慣性ナビゲーションシステム(INS)の処理装置を利用して、グローバルナビゲーション衛星システム(GNSS)データが利用できないと決定することであって、INSがADVの複数の位置に取り付けられた複数のセンサに接続されることと、時間情報の予備ソースを識別することと、時間情報の予備ソースから時間情報を検索することと、時間情報の予備ソースからの時間情報を使用して第一センサデータを同期させることであって、第一センサデータがセンサの少なくとも1つから取得されることと、時間情報を使用して同期された第一センサデータをホストシステムに送信することであって、ホストシステムが、ADVの周囲の運転環境を感知し、運転環境に基づいて軌跡を計画し、軌跡に基づいて運転環境でのADVのナビゲーションを制御するように構成されることと、を含む。
第四態様によれば、本開示のいくつかの実施形態は、プロセッサにより実行されると、本開示の第一態様に記載の方法を実行させるコンピュータプログラムを提供する。
図面の各図において、本開示の実施形態は、例示的かつ非限定的な例として示されており、図面中の類似の図面記号は、類似の要素を示す。
一実施形態に係るネットワークシステムを示すブロック図である。 一実施形態に係る自動運転車両の一例を示すブロック図である。 一実施形態に係る、自動運転車両とともに使用される感知・計画システムの一例を示すブロック図である。 一実施形態に係る自動運転のためのシステムアーキテクチャの一例を示すブロック図である。 一実施形態に係る自動運転車両のセンサシステムの一例を示すブロック図である。 一実施形態に係る自動運転車両の慣性ナビゲーションシステムの一例を示すブロック図である。 一実施形態に係るセンサシステムの慣性ナビゲーションシステムの一例を示すブロック図である。 一実施形態に係る、自動運転システム内の慣性ナビゲーションシステムの時間決定を実行するための方法の一例を示すフローチャートである。 一実施形態に係る、自動運転システム内の慣性ナビゲーションシステムの時間決定を実行するための方法の別の例を示すフローチャートである。
本開示の様々な実施形態および態様は、以下に説明される詳細を参照して説明され、図面は、前記様々な実施形態を示す。以下の説明および図面は、本開示を説明するものであり、本開示を限定するものとして解釈されるべきではない。本開示の様々な実施形態の包括的な理解を提供するために、多くの特定の詳細が説明される。しかしながら、場合によっては、本開示の実施形態の簡潔な説明を提供するために、周知または従来の詳細は説明されていない。
本明細書における「一実施形態」または「実施形態」への言及は、この実施形態に関連して説明される特定の特徴、構造、または特性が、本開示の少なくとも1つの実施形態に含まれ得ることを意味する。本明細書の様々な場所での「一実施形態では」という句の出現は、必ずしもすべてが同じ実施形態を指すとは限らない。
自動運転車両の位置を計算するために、慣性ナビゲーションシステム(INS)などのセンサユニットは、グローバルナビゲーション衛星システム(GNSS)、および慣性測定ユニット(IMU)を含み得る。GNSSは、車両の位置、速度、および進行方向を測定することができる。IMUは、車両の加速度、およびジャイロスコープ方向を測定することができる。処理装置は、GNSSデータおよびIMUデータに基づいて、(例えば、カルマンフィルタを使用して)車両の位置を推定することができる。従来のシステムでは、GNSSデータからのタイムスタンプは、IMUデータとGNSSデータを同期させるために使用される。例えば、GNSSデータの受信と略同時に受信されたIMUデータには、GNSSデータからのタイムスタンプが追加される。次に、IMUデータのタイムスタンプ(即ち、タイムスタンプ)は、位置決め(即ち、ADVの位置決め)を実行するための追加のセンサデータを同期させるために使用される。しかしながら、GNSSデータが利用できなくなる場合、IMUデータはGNSSタイムスタンプと同期できない。これは、追加のセンサデータが同期できないことを意味する。同期できるセンサデータが足りないため、位置決めが実行できない。
上記問題を解決するために、本開示の実施形態は、INS内の時間決定に使用される時間情報の予備ソースを提供する。INSは、リアルタイムクロック(RTC)またはネットワークタイムプロトコル(NTP)などの時間情報の予備ソースを含み得るため、GNSSデータが利用できない場合でも、現在時間を使用してセンサデータのタイムスタンプを追加することができる。例えば、GNSS時間データが利用できない場合、INSの処理ロジックは、時間情報の予備ソースから時間情報を検索して、タイムスタンプのIMUデータを追加することができる。次に、IMUデータおよび関連するタイムスタンプを位置決めモジュールに転送して、追加のセンサデータを同期させ、ADVの位置決めを実行することができる。
いくつかの実施形態によれば、方法は、慣性ナビゲーションシステム(INS)の処理装置を利用して、グローバルナビゲーション衛星システム(GNSS)データが利用できないと決定することと、時間情報の予備ソースを識別することと、を含む。この方法は、時間情報の予備ソースから時間情報を検索することと、予備ソースからの時間情報を使用してセンサデータを同期させることと、をさらに含む。同期時間を有するセンサデータを使用して、ADVの周囲の運転環境を感知し、運転環境をナビゲーションする経路を計画し、経路に基づいてADVを自動的に制御する。
いくつかの実施形態によれば、システムは、メモリ、およびメモリに接続された処理装置を含む。処理装置は、グローバルナビゲーション衛星システム(GNSS)データが慣性ナビゲーションシステムにとって利用できないと決定することと、時間情報の予備ソースを識別することと、予備ソースから時間情報を検索することと、を実行することができる。次に、処理装置は、予備ソースからの時間情報を使用してセンサデータを同期させることができる。
いくつかの実施形態によれば、非一時的なコンピュータ可読記憶媒体は、処理装置によって実行される命令を含む。命令が実行されると、処理装置は、グローバルナビゲーション衛星システム(GNSS)データが慣性ナビゲーションシステムにとって利用できないと決定することと、時間情報の予備ソースを識別することと、時間情報の予備ソースから時間情報を検索することと、を実行することができる。処理装置は、予備ソースからの時間情報を使用してセンサデータを同期させることもできる。
図1は、本開示の一実施形態に係る自動運転車両のネットワーク構成を示すブロック図である。図1を参照すると、ネットワーク構成100は、ネットワーク102を介して1つまたは複数のサーバ103~104に通信接続され得る自動運転車両101を含む。1つの自動運転車両が示されているが、複数の自動運転車両が、ネットワーク102を介して、互いに接続され、および/またはサーバ103~104に接続され得る。ネットワーク102は、有線または無線のローカルエリアネットワーク(LAN)、インターネットなどのワイドエリアネットワーク(WAN)、セルラーネットワーク、衛星ネットワーク、またはそれらの組み合わせなどの任意のタイプのネットワークであり得る。サーバ103~104は、ネットワークまたはクラウドサーバ、アプリケーションサーバ、バックエンドサーバ、またはそれらの組み合わせなどの任意のタイプのサーバまたはサーバクラスタであり得る。サーバ103~104は、データ分析サーバ、コンテンツサーバ、交通情報サーバ、地図・ポイントオブインタレスト(MPOI)サーバ、または位置サーバなどであり得る。
自動運転車両とは、運転者からの入力がほとんどまたはまったくない場合に車両がナビゲートして環境を通り抜ける自動運転モードで動作できるように構成され得る車両を指す。このような自動運転車両は、車両の動作環境に関連する情報を検出するように構成される1つまたは複数のセンサを有するセンサシステムを含み得る。車両およびそれに関連付けられたコントローラは、検出された情報を使用して、ナビゲートして環境を通り抜ける。自動運転車両101は、手動モード、全自動運転モード、または部分自動運転モードで動作することができる。
一実施形態では、自動運転車両101は、感知・計画システム110、車両制御システム111、無線通信システム112、ユーザインターフェースシステム113、およびセンサシステム115を含むが、これらに限定されない。自動運転車両101は、エンジン、ホイール、ステアリングホイール、トランスミッションなど、一般的な車両に含まれるいくつかの一般的なコンポーネントをさらに含み得る。コンポーネントは、加速信号または命令、減速信号または命令、ステアリング信号または命令、ブレーキ信号または命令などの様々な通信信号および/または命令を使用して、車両制御システム111および/または感知・計画システム110によって制御され得る。
コンポーネント110~115は、インターコネクト、バス、ネットワーク、またはそれらの組み合わせを介して互いに通信接続され得る。例えば、コンポーネント110~115は、コントローラエリアネットワーク(CAN)バスを介して互いに通信接続され得る。CANバスは、マイクロコントローラおよび装置がホストなしのアプリケーション内で互いに通信できるように設計された車両バス規格である。これは、最初に自動車内の多重電気配線のために設計されるが、他の多くの環境でも使用されるメッセージベースのプロトコルである。
図2を参照すると、一実施形態では、センサシステム115は、1つまたは複数のカメラ211、全地球測位システム(GPS)ユニット212、慣性測定ユニット(IMU)213、レーダーユニット214、および光検出・測距(LIDAR)ユニット215を含むが、これらに限定されない。GPSユニット212およびIMU213は、慣性ナビゲーションシステム(INS)210に一緒に含まれ得る。INS210は、GPSユニット212およびIMU213からのデータに基づいて、自動運転車両の正確な位置を計算することができる。GPSユニット212(本明細書では、GNSSとも呼ばれる)は、自動運転車両の位置に関する情報を提供するように動作可能な送受信機を含み得る。IMUユニット213は、慣性加速度に基づいて自動運転車両の位置および向きの変化を感知することができる。レーダーユニット214は、無線信号を使用して自動運転車両のローカル環境内のオブジェクトを感知するシステムを表すことができる。いくつかの実施形態では、オブジェクトを感知することに加えて、レーダーユニット214は、オブジェクトの速度および/または進行方向をさらに感知することができる。LIDARユニット215は、レーザーを使用して、自動運転車両が配置されている環境内のオブジェクトを感知することができる。他のシステムコンポーネントに加えて、LIDARユニット215は、1つまたは複数のレーザー源、レーザースキャナ、および1つまたは複数の検出器をさらに含み得る。カメラ211は、自動運転車両の周囲環境の画像を収集するための1つまたは複数の装置を含み得る。カメラ211は、スチルカメラおよび/またはビデオカメラであり得る。カメラは、例えば、カメラを回転および/または傾斜プラットフォームに取り付けることにより、機械的に移動できる。
センサシステム115は、ソナーセンサ、赤外線センサ、ステアリングセンサ、スロットルセンサ、ブレーキセンサ、およびオーディオセンサ(例えば、マイクロフォン)などの他のセンサをさらに含み得る。オーディオセンサは、自動運転車両の周囲環境から音声を収集するように構成され得る。ステアリングセンサは、ステアリングホイール、車両のホイール、またはそれらの組み合わせのステアリング角度を感知するように構成され得る。スロットルセンサおよびブレーキセンサは、それぞれ車両のスロットル位置およびブレーキ位置を感知する。いくつかの場合では、スロットルセンサおよびブレーキセンサは、統合型スロットル/ブレーキセンサとして統合され得る。
一実施形態では、車両制御システム111は、ステアリングユニット201、スロットルユニット202(加速ユニットとも呼ばれる)、およびブレーキユニット203を含むが、これらに限定されない。ステアリングユニット201は、車両の方向または前進方向を調整するために使用される。スロットルユニット202は、モータまたはエンジンの速度を制御して、車両の速度および加速度を制御するために使用される。ブレーキユニット203は、摩擦を与えることにより、車両のホイールまたはタイヤを減速させて車両を減速させるために使用される。なお、図2に示すコンポーネントは、ハードウェア、ソフトウェア、またはそれらの組み合わせで実装され得る。
図1に戻って参照すると、無線通信システム112は、自動運転車両101と、装置、センサ、他の車両などの外部システムとの間の通信を可能にする。例えば、無線通信システム112は、1つまたは複数の装置と直接無線通信するか、またはネットワーク102を介してサーバ103~104と通信するなど、通信ネットワークを介して無線通信を実行することができる。無線通信システム112は、WiFi(登録商標)などの任意のセルラー通信ネットワークまたは無線ローカルエリアネットワーク(WLAN)を介して、別のコンポーネントまたはシステムと通信することができる。無線通信システム112は、例えば、赤外線リンク、ブルートゥース(登録商標)などを介して、装置(例えば、乗客の携帯機器、表示装置、および車両101内のスピーカ)と直接通信することができる。ユーザインターフェースシステム113は、例えば、キーボード、タッチスクリーン表示装置、マイクロフォン、スピーカなどを含む、車両101内に実装された周辺装置の一部であり得る。
自動運転車両101の機能の一部または全部は、特に自動運転モードで動作する場合に、感知・計画システム110によって制御または管理され得る。感知・計画システム110は、センサシステム115、制御システム111、無線通信システム112、および/またはユーザインターフェースシステム113から情報を受信し、受信された情報を処理し、出発地から目的地までのルートまたは経路を計画し、計画および制御情報に基づいて車両101を運転するために必要なハードウェア(例えば、プロセッサ、メモリ、記憶装置)およびソフトウェア(例えば、オペレーティングシステム、計画・ルーティングプログラム)を含む。あるいは、感知・計画システム110は、車両制御システム111と統合され得る。
例えば、乗客としてのユーザは、例えばユーザインターフェースを介して、行程の出発地および目的地を指定することができる。感知・計画システム110は、行程関連データを取得する。例えば、感知・計画システム110は、サーバ103~104の一部であり得るMPOIサーバから位置およびルート情報を取得することができる。位置サーバは位置サービスを提供し、MPOIサーバは地図サービスおよび特定の位置のPOIを提供する。あるいは、そのような位置およびMPOI情報は、感知・計画システム110の永久記憶装置にローカルにキャッシュされ得る。
自動運転車両101がルートに沿って移動しているとき、感知・計画システム110は、交通情報システムまたはサーバ(TIS)からリアルタイムの交通情報を取得することもできる。なお、サーバ103~104は、サードパーティエンティティによって操作され得る。あるいは、サーバ103~104の機能は、感知・計画システム110と統合され得る。リアルタイムの交通情報、MPOI情報、および位置情報、ならびにセンサシステム115によって検出または感知されたリアルタイムのローカル環境データ(例えば、障害物、オブジェクト、近くの車両)に基づいて、感知・計画システム110は、最適なルートを計画し、計画されたルートに従って、例えば、制御システム111を介して車両101を運転して、指定された目的地に安全かつ効率的に到達することができる。
サーバ103は、様々なクライアントのためのデータ分析サービスを実行するためのデータ分析システムであり得る。一実施形態では、データ分析システム103は、データコレクタ121および機械学習エンジン122を含む。データコレクタ121は、様々な車両(自動運転車両または運転者によって運転される従来の車両)から運転統計データ123を収集する。運転統計データ123は、発行された運転命令(例えば、スロットル、ブレーキ、ステアリング命令)と、異なる時点で車両のセンサによって取得された車両の応答(例えば、速度、加速、減速、方向)とを示す情報を含む。運転統計データ123は、異なる時点での運転環境を説明する情報、例えば、ルート(出発地および目的地を含む)、MPOI、道路状況、気象条件などをさらに含み得る。
運転統計データ123に基づいて、機械学習エンジン122は、様々な目的のために1組の規則、アルゴリズム、および/または予測モデル124を生成または訓練する。例えば、アルゴリズム124は、様々な時間ソース(例えば、GNSS、RTL、および/またはNTPソース)からのタイミング情報を同期させるためのアルゴリズムを含み得る。次に、アルゴリズム124は、自動運転中にリアルタイムで使用されるようにADVにアップロードされ得る。
図3は、一実施形態に係る、自動運転車両とともに使用される感知・計画システムの一例を示すブロック図である。システム300は、自動運転システム(ADS)とも呼ばれており、感知・計画システム110、制御システム111、およびセンサシステム115を含むがこれらに限定されない、図1の自動運転車両101の一部として実装され得る。図3を参照すると、感知・計画システム110は、位置決めモジュール301、感知モジュール302、予測モジュール303、決定モジュール304、計画モジュール305、制御モジュール306、およびルーティングモジュール307を含むが、これらに限定されない。
モジュール301~307の一部または全部は、ソフトウェア、ハードウェア、またはそれらの組み合わせで実装され得る。例えば、これらのモジュールは、永久記憶装置352にインストールされ、メモリ351にロードされ、1つまたは複数のプロセッサ(図示せず)によって実行され得る。なお、これらのモジュールの一部または全部は、図2の車両制御システム111のモジュールの一部または全部に通信接続され得るか、またはこれらと統合され得る。モジュール301~307の一部は、統合モジュールとして一緒に統合され得る。
位置決めモジュール301は、(例えば、INS210およびセンサシステム115を使用して)自動運転車両300の現在位置を決定し、ユーザの行程またはルートに関連するすべてのデータを管理する。位置決めモジュール301(地図/ルートモジュールとも呼ばれる)は、ユーザの行程またはルートに関連するすべてのデータを管理する。ユーザは、例えば、ユーザインターフェースを介してログインし、行程の出発地および目的地を指定することができる。位置決めモジュール301は、地図/ルート情報311などの自動運転車両300の他のコンポーネントと通信して、行程関連データを取得する。例えば、位置決めモジュール301は、位置サーバおよび地図・POI(MPOI)サーバから位置およびルート情報を取得することができる。位置サーバは位置サービスを提供し、MPOIサーバは地図サービスおよび特定の位置のPOIを提供する。これらは、地図/ルート情報311の一部としてキャッシュされ得る。自動運転車両300がルートに沿って移動しているとき、位置決めモジュール301はまた、交通情報システムまたはサーバからリアルタイムの交通情報を取得することができる。
センサシステム115によって提供されたセンサデータ、および位置決めモジュール301によって取得された位置決め情報に基づいて、感知モジュール302は、周囲環境の感知を決定する。感知情報は、一般的な運転者が運転者の運転している車両の周囲で何を感知するかを表すことができる。感知情報は、オブジェクトの形態などを採用した車線構成、交通信号灯信号、別の車両の相対位置、歩行者、建物、横断歩道、または他の交通関連標識(例えば、止まれの標識、譲れの標識)などを含み得る。車線構成は、1つまたは複数の車線を説明する情報、例えば、車線の形状(例えば、直線または曲線)、車線の幅、道路内の車線数、一方向または双方向の車線、合流車線または分岐車線、出口車線などを含む。
感知モジュール302は、1つまたは複数のカメラによって収集された画像を処理および分析して、自動運転車両の環境内のオブジェクトおよび/または特徴を識別するためのコンピュータビジョンシステムまたはコンピュータビジョンシステムの機能を含み得る。オブジェクトは、交通信号、道路境界、他の車両、歩行者、および/または障害物などを含み得る。コンピュータビジョンシステムは、オブジェクト識別アルゴリズム、ビデオ追跡、および他のコンピュータビジョン技術を使用することができる。いくつかの実施形態では、コンピュータビジョンシステムは、環境地図の作成、オブジェクト追跡、オブジェクトの速度の推定などを実行することができる。感知モジュール302はまた、レーダーおよび/またはLIDARなどの他のセンサによって提供された他のセンサデータに基づいてオブジェクトを検出することができる。
オブジェクトのそれぞれについて、予測モジュール303は、オブジェクトがこの状況でどのように動作するかを予測する。予測は、1組の地図/ルート情報311および交通規則312を考慮してその時点での運転環境を感知する感知データに基づいて、実行される。例えば、オブジェクトが反対方向の車両であり、現在の運転環境が交差点を含む場合、予測モジュール303は、車両が直接前進する可能性が高いか、それともステアリングする可能性が高いかを予測する。感知データが、交差点に交通信号灯がないことを示す場合、予測モジュール303は、車両が交差点に入る前に完全に停止しなければならない可能性があることを予測することができる。感知データが、車両が現在左折専用車線または右折専用車線にあることを示す場合、予測モジュール303は、車両がそれぞれ左折または右折する可能性が高いことを予測することができる。
オブジェクトのそれぞれについて、決定モジュール304は、オブジェクトをどのように処理するかについての決定を行う。例えば、特定のオブジェクト(例えば、交差点にある別の車両)、およびオブジェクトを説明するメタデータ(例えば、速度、方向、ステアリング角度)について、決定モジュール304は、どのようにオブジェクトとすれ違うか(例えば、追い越し、譲れ、停止、通過)を決定する。決定モジュール304は、永久記憶装置352に記憶され得る交通規則または運転規則312などの規則セットに基づいてこのような決定を実行することができる。
ルーティングモジュール307は、出発地から目的地までの1つまたは複数のルートまたは経路を提供するように構成される。出発地から目的地までの所与の行程、例えば、ユーザから受信された所与の行程について、ルーティングモジュール307は、地図/ルート情報311を取得し、出発地から目的地までのすべての可能なルートまたは経路を決定する。ルーティングモジュール307は、出発地から目的地までの各ルートを決定する地形図の形態での基準線を生成することができる。基準線とは、他の車両、障害物、または交通状況などからの干渉を受けない理想的なルートまたは経路を指す。即ち、道路上に他の車両、歩行者、または障害物がない場合、ADVは、基準線に正確にまたは密接に従うべきである。次に、地形図は、決定モジュール304および/または計画モジュール305に提供される。決定モジュール304および/または計画モジュール305は、すべての可能なルートをチェックして、位置決めモジュール301からの交通状況、感知モジュール302によって感知された運転環境、および予測モジュール303によって予測された交通状況など、他のモジュールによって提供された他のデータに基づいて、最適なルートのうちの1つを選択して変更する。その時点での特定の運転環境に応じて、ADVを制御するための実際の経路またはルートは、ルーティングモジュール307によって提供された基準線に近いか、または異なる場合がある。
感知されたオブジェクトのそれぞれの決定に基づいて、計画モジュール305は、ルーティングモジュール307によって提供された基準線を基礎として使用して、自動運転車両の経路またはルートおよび運転パラメータ(例えば、距離、速度、および/またはステアリング角度)を計画する。即ち、所与のオブジェクトについて、決定モジュール304はこのオブジェクトに対して何を処理するかを決定するが、計画モジュール305はどのように処理するかを決定する。例えば、所与のオブジェクトについて、決定モジュール304はオブジェクトを追い越すことを決定することができるが、計画モジュール305はオブジェクトの左側または右側のどちらを追い越すかを決定することができる。計画および制御データは、計画モジュール305によって生成され、車両300が次の移動周期(例えば、次のルート/経路セグメント)でどのように移動するかを説明する情報を含む。例えば、計画および制御データは、車両300に、時速30マイル(mph)の速度で10メートル移動し、次に25mphの速度で右側車線に変更するように指示することができる。
計画および制御データに基づいて、制御モジュール306は、計画および制御データによって定義されたルートまたは経路に従って、適切な命令または信号を車両制御システム111に送信することにより、自動運転車両を制御して運転する。計画および制御データは、経路またはルートに沿って異なる時点で適切な車両設定または運転パラメータ(例えば、スロットル、ブレーキ、ステアリング命令)を使用して、ルートまたは経路の第一点から第二点まで車両を運転するのに十分な情報を含む。
一実施形態では、計画段階は、例えば時間間隔が100ミリ秒(ms)である周期などの複数の計画周期(運転周期とも呼ばれる)で実行される。計画周期または運転周期ごとに、計画および制御データに基づいて1つまたは複数の制御命令が発行される。即ち、100msごとに、計画モジュール305は、次のルートセグメントまたは経路セグメント、例えば、目標位置およびADVが目標位置に到達するのに必要な時間を計画する。あるいは、計画モジュール305は、特定の速度、方向、および/またはステアリング角度などをさらに指定することができる。一実施形態では、計画モジュール305は、次の所定の期間(例えば、5秒)内にルートセグメントまたは経路セグメントを計画する。各計画周期について、計画モジュール305は、前の周期で計画された目標位置に基づいて、現在の周期(例えば、次の5秒)に使用される目標位置を計画する。次に、制御モジュール306は、現在の周期の計画および制御データに基づいて、1つまたは複数の制御命令(例えば、スロットル、ブレーキ、ステアリング制御命令)を生成する。
なお、決定モジュール304および計画モジュール305は、統合モジュールとして統合され得る。決定モジュール304/計画モジュール305は、自動運転車両の運転経路を決定するためのナビゲーションシステムまたはナビゲーションシステムの機能を含み得る。例えば、ナビゲーションシステムは、経路に沿った自動運転車両の移動に影響を与えるための一連の速度および前進方向を決定することができる。前記経路は、自動運転車両が、感知された障害物を基本的に回避しながら、最終目的地に通じる車道ベースの経路に沿って前進することを可能にする。目的地は、ユーザインターフェースシステム113を介したユーザ入力に従って設定され得る。ナビゲーションシステムは、自動運転車両の運転中に運転経路を動的に更新することができる。ナビゲーションシステムは、GPSユニット、慣性ナビゲーションシステム、および1つまたは複数の地図からのデータを統合して、自動運転車両の運転経路を決定することができる。
図4は、一実施形態に係る自動運転のためのシステムアーキテクチャを示すブロック図である。システムアーキテクチャ400は、図3に示す自動運転システムのシステムアーキテクチャを表すことができる。図4を参照すると、システムアーキテクチャ400は、アプリケーション層401、計画・制御(PNC)層402、感知層403、ドライバ層404、ファームウェア層405、およびハードウェア層406を含むが、これらに限定されない。アプリケーション層401は、ユーザインターフェースシステム113に関連付けられた機能など、自動運転車両のユーザまたは乗客と対話するユーザインターフェースまたは構成アプリケーションを含み得る。PNC層402は、少なくとも計画モジュール305および制御モジュール306の機能を含み得る。感知層403は、少なくとも感知モジュール302の機能を含み得る。一実施形態では、予測モジュール303および/または決定モジュール304の機能を含む追加層が存在する。あるいは、そのような機能は、PNC層402および/または感知層403に含まれ得る。システムアーキテクチャ400は、ドライバ層404、ファームウェア層405、およびハードウェア層406をさらに含む。ファームウェア層405は、センサシステム115の機能を少なくとも表すことができ、フィールド・プログラマブル・ゲート・アレイ(FPGA)の形態で実装され得る。ハードウェア層406は、制御システム111などの自動運転車両のハードウェアを表すことができる。層401~403は、デバイスドライバ層404を介してファームウェア層405およびハードウェア層406と通信することができる。
図5Aは、本発明の一実施形態に係るセンサシステムの一例を示すブロック図である。図5Aを参照すると、センサシステム115は、複数のセンサ510、およびホストシステム110に接続されたセンサユニット500を含む。ホストシステム110は、上記の計画・制御システムを表し、図3に示すモジュールの少なくともいくつかを含み得る。センサユニット500は、FPGAデバイスまたはASIC(特定用途向け集積回路)デバイスの形態で実装され得る。一実施形態では、センサユニット500は、特に、1つまたは複数のセンサデータ処理モジュール501(センサ処理モジュールとも略称する)、データ送信モジュール502、およびセンサ制御モジュールまたはロジック503を含む。モジュール501~モジュール503は、センサインターフェース504を介してセンサ510と通信することができ、ホストインターフェース505を介してホストシステム110と通信することができる。任意選択的に、内部または外部バッファ506は、処理のためにデータをバッファリングするために使用され得る。
一実施形態では、センサ510は、GPSユニットおよびIMUであり得る。図5Bに示すように、GPSユニットおよびIMUは、単一のFPGAまたはASIC上のセンサユニット500に接続され得、慣性測定システム(INS)と呼ばれる。センサ処理モジュール501は、GPSユニットおよびIMUからデータを受信してデータに基づいて(例えば、カルマンフィルタを使用して)自動運転車両の位置を推定するために使用される、ロジックを含み得る。センサ処理モジュール501は、RTC、NTPまたは他の時間情報ソースから時間情報を検索するために、図5に関して以下に説明するようなロジックをさらに含み得る。
一実施形態では、受信経路または上流方向について、センサ処理モジュール501は、センサインターフェース504を介してセンサからセンサデータを受信し、バッファ領域506に一時的に記憶され得るセンサデータ(例えば、フォーマット変換、エラーチェック)を処理するように構成される。データ送信モジュール502は、ホストインターフェース505と互換性のある通信プロトコルを使用して、処理されたデータをホストシステム110に送信するように構成される。同様に、送信経路または下流方向について、データ送信モジュール502は、ホストシステム110からデータまたは命令を受信するように構成される。次に、センサ処理モジュール501は、対応するセンサと互換性のあるフォーマットにデータのフォーマットを処理する。次に、処理されたデータをセンサに送信する。
一実施形態では、センサ制御モジュールまたはロジック503は、ホストインターフェース505を介してホストシステム(例えば、感知モジュール)から受信された命令に応答して、取得されたセンサデータのタイミングのアクティブ化など、センサ510のいくつかの動作を制御するように構成される。ホストシステム110は、センサデータを協調的および/または同期的に取得して任意の時点でセンサデータを使用して車両の周囲の運転環境を感知するように、センサ510を構成することができる。
センサインターフェース504は、イーサネット、USB(ユニバーサル・シリアル・バス)、LTE(ロングタームエボリューション)またはセルラー、WiFi(登録商標)、GPS、カメラ、CAN、シリアル(例えば、ユニバーサル非同期受信機/送信機またはUART)、SIM(加入者識別モジュール)カード、および他のユニバーサル入力/出力(GPIO)インターフェースのうちの1つまたは複数を含み得る。ホストインターフェース505は、PCIe(ペリフェラル・コンポーネント・インターコネクトまたは高速PCI)インターフェースなど、任意の高速または高帯域幅インターフェースであり得る。センサ510は、カメラ、LIDARデバイス、RADARデバイス、GPS受信機、IMU、超音波センサ、GNSS(グローバルナビゲーション衛星システム)受信機、LTEまたはセルラーSIMカード、車両センサ(例えば、スロットル、ブレーキ、ステアリングセンサ)、システムセンサ(例えば、温度、湿度、圧力センサ)など、自動運転車両に使用される様々なセンサを含み得る。
例えば、カメラは、イーサネットまたはGPIOインターフェースを介して接続され得る。GPSセンサは、USBまたは特定のGPSインターフェースを介して接続され得る。車両センサは、CANインターフェースを介して接続され得る。RADARセンサまたは超音波センサは、GPIOインターフェースを介して接続され得る。LIDARデバイスは、イーサネットインターフェースを介して接続され得る。外部SIMモジュールは、LTEインターフェースを介して接続され得る。同様に、内部SIMモジュールは、センサユニット500のSIMソケットに挿入され得る。UARTなどのシリアルインターフェースは、デバッグのためにコンソールシステムに接続され得る。
なお、センサ510は、任意のタイプのセンサであり得、様々な供給業者または供給者によって提供され得る。センサ処理モジュール501は、異なるタイプのセンサおよびそれらのそれぞれのデータフォーマットおよび通信プロトコルを処理するように構成される。一実施形態によれば、各センサ510は、センサデータを処理し、処理されたセンサデータをホストシステム110と対応するセンサとの間で送信するために使用される特定のチャネルに関連付けられる。各チャネルは、特定のセンサ処理モジュールおよび特定のデータ送信モジュール(対応するセンサデータおよびプロトコルを処理するように構成またはプログラミングされるもの)を含み得る。
低遅延モードで動作する場合、一実施形態によれば、データ送信モジュール(例えば、データ送信モジュール502)は、センサから受信されたセンサデータを、遅延なしまたは最小遅延でできるだけ早くホストシステムに送信するように構成される。いくつかのセンサデータは、できるだけ早く処理すべきタイミングの面で非常に敏感である。このようなセンサデータの一例は、車速、加速度、ステアリング角度などの車両状態を含む。
一実施形態によれば、高帯域幅モードで動作する場合、データ送信モジュール(例えば、データ送信モジュール502)は、センサから受信されたセンサデータを所定量まで累積するが、それをデータ送信モジュールとホストシステム110との間の接続の帯域幅範囲内に維持するように構成される。次に、累積されたセンサデータは、データ送信モジュールとホストシステム110との間の接続の最大帯域幅を利用して、ホストシステム110にバッチで送信される。一般に、高帯域幅モードは、大量のセンサデータを生成するセンサに使用される。このようなセンサデータの一例は、カメラのピクセルデータを含む。
一実施形態によれば、メモリモードで動作する場合、データ送信モジュールは、共有メモリページと同様に、センサから受信されたセンサデータをホストシステム110のマッピングメモリのメモリ位置に直接書き込むように構成される。メモリモードで送信されるセンサデータの一例は、温度、ファン速度などのシステム状態データを含む。
一実施形態では、センサシステム115は、リアルタイムクロック542およびネットワークタイムプロトコル544の一方または両方を含み得る。なお、コンポーネント542および/またはコンポーネント544は、センサユニット500の一部として実装され得る。リアルタイムクロック542は、集積回路、ソフトウェア、またはそれらの組み合わせなど、現在時間データをセンサシステムのローカルに提供するハードウェアであり得る。RTC542は、センサ510またはセンサユニット500の電源以外の電源(例えば、電池)によって給電され得る。RTC542は、水晶発振器または電力線周波数を使用して現在時間を追跡することができる。ネットワークタイムプロトコル544は、インターネットから現在時間情報を検索するために使用され得る。NTP544は、現在時間を示す64ビット、128ビット、または他の任意数のビットからなるタイムスタンプを、NTPサーバから要求して受信することができる。NTPサーバの送信遅延を解決するために、受信されたタイムスタンプはNTP544によって調整され得る。
図5Bは、一実施形態に係る、図5Aのセンサシステム115に含まれ得る慣性ナビゲーションシステム(INS)530を示す図である。INS530は、GNSS受信機532(GPSユニットとも呼ばれる)、慣性測定ユニット(IMU)534、およびマイクロコントローラユニット(MCU)536を含むが、これらに限定されない。GNSS受信機532は、アンテナ520からのGNSS測定値を受信して処理することができ、アンテナ520は、INS530の外側(例えば、車両の屋根)に配置され得る。次に、GNSS受信機532は、GNSSデータをMCU536に転送することができる。GNSSデータは、車両の位置、速度、および進行方向、ならびにいつ測定するかを示すタイムスタンプを含み得る。一実施形態では、IMU534は、自動運転車両の加速度および向きを測定し、これらの測定値をMCU536に送信して(例えば、カルマンフィルタを使用して)GNSSデータと統合することができる。MCU536は、GNSSデータのタイムスタンプを使用してIMUデータのタイムスタンプを追加して、略同時に測定されたデータを同期させることができる。MCU536は、カルマンフィルタの位置推定の出力結果を、タイムスタンプがGNSSデータのタイムスタンプを使用して追加されたIMUデータとともに感知・計画システムの位置決めモジュールに転送して、位置計算に使用することができる。一実施形態では、位置決めモジュールまたは感知・計画システムの他の任意のモジュールは、IMUデータのタイムスタンプを使用して、他のセンサ(例えば、カメラ、LiDARユニットなど)から受信されたデータを同期させることができる。次に、位置決めモジュールは、同期されたセンサデータを使用して、位置決め計算を実行することができる。他の実施形態では、感知・計画システムの他のモジュールは、同期されたセンサデータを使用して、任意数の操作を実行することができる。
しかしながら、場合によっては、様々な理由で(例えば、車両がトンネル内にあり、GNSSデータを受信していないため)、GNSSデータは利用できなくなる可能性がある。この場合、ADVの感知・計画システムはセンサデータの同期を実行できない可能性があり、位置決めおよび他の機能の喪失につながる可能性がある。一実施形態では、INS530は、ネットワークタイムプロトコル544からの要求を実行するためのロジック、および/またはリアルタイムクロック(RTC)542をさらに含む。MCU536は、GNSSデータが利用できないと決定した場合、RTC542またはNTP544から時間情報を検索して、IMUデータのタイムスタンプを追加することができる。次に、感知・計画システムは、IMUデータのタイムスタンプを使用して、他のセンサデータを同期させることができる。一実施形態では、リアルタイムクロック(RTC)542は、集積回路、ソフトウェア、またはそれらの組み合わせなど、現在時間データをセンサシステムのローカルに提供するハードウェアであり得る。RTC542は、センサ510またはセンサユニット500の電源以外の電源(例えば、電池)によって給電され得る。RTC542は、水晶発振器または電力線周波数を使用して現在時間を追跡することができる。一実施形態では、ネットワークタイムプロトコル544は、インターネットから現在時間情報を検索するために使用され得る。NTP544は、現在時間を示す64ビット、128ビット、または他の任意数のビットからなるタイムスタンプを、NTPサーバから要求して受信することができる。一実施形態では、NTPサーバの送信遅延を解決するために、受信されたタイムスタンプはNTP544によって調整され得る。従って、GNSS時間データが利用できない場合でも、RTC542および/またはNTP544は、位置決め機能を実現することができる。
図5Cは、一実施形態に係るセンサシステムを示す図である。センサシステムは、INS530と、位置決めモジュール301と、LiDARユニット215およびカメラ211などのセンサとを含み得る。図5Bと同様に、INS530は、GNSS受信機532、IMU534、およびMCU536を含み得る。さらに、一実施形態では、MCU536は、RTC542およびNTP544を含み得る。一実施形態では、MCU536が、GNSSデータが閾値期間内に利用できないと決定した場合、MCU536は、RTC542またはNTP544からの時間情報を使用して、IMUから受信されたIMUデータのタイムスタンプを追加することができる。一実施形態では、MCU536は最初に、RTC542からの時間情報を使用して、IMUデータのタイムスタンプを追加しようと試みることができる。MCU536は、RTCデータが利用できない場合、NTP544からの時間情報を使用して、IMUデータのタイムスタンプを追加することができる。別の実施形態では、MCU536は最初に、NTP544を使用して、IMUデータのタイムスタンプを追加しようと試みることができる。MCU536は、NTP544からの時間情報が利用できない場合、RTC542を使用して、IMUデータのタイムスタンプを追加することができる。
一実施形態では、MCU536は、タイタイムスタンプを有するIMUデータを位置決めモジュール301に転送することができる。位置決めモジュール301は、図3に関して説明した位置決めモジュール301と同一または類似することができる。位置決めモジュール301は、計画・感知モジュール(例えば、計画・感知モジュール110)に含まれ得る。位置決めモジュール301は、LiDARユニット215およびカメラ211などの他のセンサユニットからセンサデータを受信することもできる。次に、位置決めモジュールは、IMUデータのタイムスタンプ(即ち、RTC542またはNTP544からの時間情報)と略同時に受信された各センサデータのタイムスタンプを追加し、すべての受信されたセンサデータをIMUデータと同期させることができる。次に、位置決めモジュール301は、同期されたセンサデータを使用して、位置決め操作を実行してADVの位置を決定することができる。
一実施形態では、タイムスタンプを有するIMUデータを転送することに加えて、MCU536は、ハードウェアによって生成されたパルスまたは信号(1秒あたりのパルスまたはPPSと呼ばれる)を毎秒一回送信することもできる。位置決めモジュール301は、PPSを使用してIMUデータのタイムスタンプを校正して、RTC542および/またはNTP544から受信されたタイムスタンプの遅延、ドリフト、またはジッターを解決することができる。RTC542および/またはNTP544からの時間情報は、ソフトウェアによって生成され、エラーにつながる可能性がある。位置決めモジュール301は、ハードウェアによって生成されたPPSを使用して、IMUデータのタイムスタンプを校正し、ソフトウェアによって生成された時間情報によって引き起こされるエラーを低減することができる。
図6は、一実施形態に係る、自動運転車両の慣性ナビゲーションシステム内のGNSS遅延を調整するプロセスを示すフローチャートである。プロセス600は、ハードウェア、ソフトウェアまたはそれらの組み合わせによって実行され得る。プロセス600は、INSのMCUの処理ロジックによって実行され得る。操作602において、処理ロジックは、GNSS+データが利用できないと決定する。GNSSデータが閾値期間内に受信されていない場合、処理ロジックは、GNSSデータが利用できないと決定することができる。別の実施形態では、GNSSデータが予想通りに受信されていない場合(例えば、GNSSデータが毎秒1回受信されると予想されるが、5秒受信されていない場合)、処理ロジックは、GNSSデータが利用できないと決定することができる。処理ロジックは、任意の他の方法を使用して、GNSSデータが利用できないと決定して、失われたデータ、予想されるデータなどを識別することもできる。
操作604において、処理ロジックは、時間情報の予備ソースを識別する。一実施形態では、処理ロジックは、時間情報の予備ソースのうちの1つまたは複数をクエリし、それらのソースのうちの1つまたは複数を選択して、それらから時間情報を取得することができる。例えば、処理ロジックは、ネットワークが利用できると識別し、ネットワークタイムプロトコルを使用して現在時間情報を取得することができる。別の例では、処理ロジックは、慣性ナビゲーションシステムのローカルにリアルタイムクロックが含まれると識別し、それらから現在時間情報を取得することができる。
操作606において、処理ロジックは、時間情報の予備ソースから時間情報を検索する。一実施形態では、処理ロジックが時間情報の予備ソースを識別した場合、処理ロジックは、時間情報を要求することができる。例えば、処理ロジックは、NTPを実行して、Internetから現在時間情報を検索するか、またはリアルタイムクロックから時間情報を要求することができる。一例では、GNSSデータが利用できない場合、処理ロジックは、予備ソースから現在時間情報を連続的に受信する。別の例では、GNSSデータが利用できる場合でも、処理ロジックは、予備ソースから時間情報を受信する。この場合、予備ソースからの時間情報は、GNSS時間データを使用して校正され得る。
操作608において、処理ロジックは、時間情報の予備ソースからの時間情報を使用してセンサデータを同期させる。一実施形態では、処理ロジックは、予備ソースからの時間情報を使用して、INSのIMUから受信されたセンサデータを同期させることができる。例えば、処理ロジックは、IMUデータを受信し、時間情報を使用してIMUデータのタイムスタンプを追加することができる(例えば、IMUデータを現在時間と関連付ける)。従って、GNSS時間データが利用できない場合でも、時間情報の予備ソースからの時間情報を使用してIMUデータのタイムスタンプを追加することができる。さらに、処理ロジックは、タイムスタンプを有するIMUデータを計画・感知モジュールに転送することができ、ここで他のセンサデータはIMUデータのタイムスタンプを使用して同期され得る。従って、予備ソースからの時間情報はまた、計画・感知モジュールによって受信されたすべてのセンサデータを同期させるために使用され得る。
図7は、別の実施形態に係る、INS内のGNSS遅延を調整するプロセスを示すフローチャートである。プロセス600は、ハードウェア、ソフトウェアまたはそれらの組み合わせによって実行され得る。プロセス700は、INSのMCUの処理ロジックによって実行され得る。操作702において、処理ロジックは、GNSS時間データ、および予備ソースからの時間データを受信する。GNSS時間データは、ADVのアンテナによって受信され、INSのGNSS受信機によって処理され得る。次に、処理ロジックは、GNSS受信機からGNSSデータを受信することができる。さらに、処理ロジックは、RTCまたはNTPなどの時間情報の予備ソースから時間情報を受信することができる。
操作704において、処理ロジックは、GNSS時間データを使用して、予備ソースからの時間データを校正する。時間情報の予備ソースの精度は、GNSS時間データよりも低い。従って、処理ロジックは、時間情報をGNSS時間データにより近いものに調整することができる。例えば、予備ソースは、GNSS時間データよりも5ミリ秒遅い時間情報を提供することができる。一実施形態では、処理ロジックは、時間情報を毎回受信したときに予備ソースからの時間情報を5ms校正することができる。このようにして、処理ロジックは、予備ソースからの時間情報を使用して、現在時間をより正確に反映することができる。
操作706において、処理ロジックは、GNSS時間データが利用できなくなると決定する。一実施形態では、GNSSデータが閾値期間内に受信されていない場合、処理ロジックは、GNSSデータが利用できないと決定することができる。別の実施形態では、GNSSデータが予想通りに受信されていない場合(例えば、GNSSデータが毎秒1回受信されると予想されるが、5秒受信されていない場合)、処理ロジックは、GNSSデータが利用できないと決定することができる。処理ロジックは、任意の他の方法を使用して、GNSSデータが利用できないと決定して、失われたデータ、予想されるデータなどを識別することもできる。
操作708において、処理ロジックは、GNSS時間データが利用できない場合、予備ソースからの校正された時間データを使用して、センサデータを同期させる。一実施形態では、処理ロジックは、予備ソースからの校正された時間データを使用してIMUデータのタイムスタンプを追加して、INSのIMUから受信されたデータを同期させることができる。一実施形態では、処理ロジックは、以前に利用可能なGNSS時間データと予備ソースからの時間データとの間に差があると決定することができる。この場合、処理ロジックは、一定期間内にそれをGNSS時間データから予備ソースからの時間データに徐々に調整することができる。例えば、スムーズな遷移を提供するために、タイムスタンプを1秒、1分、5分または他の任意の時間間隔でGNSS時間データから予備ソースからの時間データに調整することができる。タイムスタンプを経時的に徐々に調整することは、同期時間が大幅に増加すると、エラーが発生することを防止することができる。
IMUデータのタイムスタンプを追加した後、処理ロジックは、タイムスタンプを有するIMUデータを感知・計画システムに転送することができ、ここで他のセンサデータはIMUデータのタイムスタンプを使用して同期され得る。次に、感知・計画システムの位置決めモジュールは、ADVの現在位置を計算することができる。
なお、上記で説明したコンポーネントの一部または全部は、ソフトウェア、ハードウェア、またはそれらの組み合わせで実装され得る。例えば、このようなコンポーネントは、永久記憶装置にインストールおよび記憶されたソフトウェアとして実装され得、このソフトウェアは、本願全体にわたって説明されるプロセスまたは操作を実施するために、プロセッサ(図示せず)によってメモリにロードされ、メモリ内で実行され得る。あるいは、このようなコンポーネントは、専用ハードウェア(例えば、集積回路(例えば、特定用途向け集積回路またはASIC)、デジタルシグナルプロセッサ(DSP)、またはフィールド・プログラマブル・ゲート・アレイ(FPGA))にプログラミングされるかまたは埋め込まれる実行可能コードとして実装され得、この実行可能コードは、アプリケーションからの対応するドライバおよび/またはオペレーティングシステムを介してアクセスされ得る。さらに、このようなコンポーネントは、1つまたは複数の特定の命令を介してソフトウェアコンポーネントによってアクセスされ得る命令セットの一部として、プロセッサまたはプロセッサコア内の特定のハードウェアロジックとして実装され得る。
前述の詳細な説明の一部は、コンピュータメモリ内のデータビットに対する演算のアルゴリズムおよび記号表現に関して示される。これらのアルゴリズムの説明と表現は、自分の作業の本質を他の当業者に最も効果的に伝えるためにデータ処理分野の当業者によって使用される手段である。本明細書では、アルゴリズムは一般に、所望の結果につながる自己矛盾のない一連の操作であると考えられる。これらの操作とは、物理量の物理的操作を必要とする操作を指す。
但し、これらおよび同様の用語はすべて、適切な物理量に関連付けることを目的としており、これらの量に適用される便利なラベルにすぎないことを理解されたい。上記の説明において他の方式で明示的に指摘されない限り、明細書全体では、用語(例えば、添付の特許請求の範囲に記載の用語)を使用した説明とは、コンピュータシステムまたは同様の電子コンピューティングデバイスの動作および処理を指し、このコンピュータシステムまたは電子コンピューティングデバイスは、コンピュータシステムのレジスタおよびメモリの内部で物理(電子)量として示されるデータを制御し、データをコンピュータシステムのメモリまたはレジスタ、または他の情報記憶装置、送信または表示装置の内部で同様に物理量として示される他のデータに変換する。
本開示の実施形態はまた、本明細書中の操作を実行するための機器に関する。このコンピュータプログラムは、非一時的なコンピュータ可読媒体に記憶される。機械可読媒体は、機械(例えば、コンピュータ)によって読み取り可能な形態で情報を記憶するための任意のメカニズムを含む。例えば、機械可読(例えば、コンピュータ可読)媒体は、機械(例えば、コンピュータ)可読記憶媒体(例えば、リードオンリーメモリ(「ROM」)、ランダムアクセスメモリ(「RAM」)、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリデバイス)を含む。
前述の図面に示されるプロセスまたは方法は、ハードウェア(例えば、回路、特定用途向けロジックなど)、ソフトウェア(例えば、非一時的なコンピュータ可読媒体で具体化されるもの)、または両方の組み合わせを含む処理ロジックによって実行され得る。プロセスまたは方法は、いくつかの連続操作に関して上記で説明されるが、いくつかの操作は、異なる順序で実行され得ることを理解されたい。また、いくつかの操作は、順次ではなく並列に実行され得る。
本開示の実施形態は、いかなる特定のプログラミング言語も参照せずに説明される。本明細書で説明される本開示の実施形態の教示を実施するために、様々なプログラミング言語が使用され得ることを理解されたい。
前述の明細書では、本開示の実施形態は、本開示の特定の例示的な実施形態を参照して説明される。添付の特許請求の範囲に記載の本開示のより広い精神および範囲から逸脱することなく、本開示に様々な修正を加えることができることは明らかであろう。従って、本明細書および図面は、限定的な意味ではなく例示的な意味で理解されるべきである。

Claims (18)

  1. 自動運転車両(ADV)を操作するための方法であって、
    慣性ナビゲーションシステム(INS)の処理装置を利用して、グローバルナビゲーション衛星システム(GNSS)データが利用できないと決定することであって、前記INSが前記ADVの複数の位置に取り付けられた複数のセンサに接続されることと、
    時間情報の予備ソースを識別することと、
    前記時間情報の予備ソースから時間情報を検索することと、
    前記時間情報の予備ソースからの時間情報を使用して第一センサデータを同期させることであって、前記第一センサデータが前記センサの少なくとも1つから取得されることと、
    前記時間情報を使用して同期された前記第一センサデータをホストシステムに送信することであって、前記ホストシステムが、前記ADVの周囲の運転環境を感知し、前記運転環境に基づいて軌跡を計画し、前記軌跡に基づいて前記運転環境での前記ADVのナビゲーションを制御するように構成されることと、
    前記GNSSデータが再び利用できると決定した場合、前記予備ソースからの前記時間情報を前記GNSSデータからの時間に徐々に調整することと、を含む、
    自動運転車両(ADV)を操作するための方法。
  2. 前記GNSSデータが利用できないと決定することは、
    閾値期間内に前記GNSSデータが受信されていないと決定することを含む、
    請求項1に記載の方法。
  3. 前記第一センサデータおよび前記予備ソースからの前記時間情報を位置決めモジュールに送信することであって、前記位置決めモジュールが前記第一センサデータおよび前記時間情報を使用して第二センサデータを同期させることをさらに含む、
    請求項1または2に記載の方法。
  4. 前記時間情報の予備ソースは、リアルタイムクロック(RTC)またはネットワークタイムプロトコル(NTP)のうちの少なくとも1つを含む、
    請求項1に記載の方法。
  5. 前記第一センサデータは、慣性測定ユニット(IMU)からのデータを含む、
    請求項1に記載の方法。
  6. 前記GNSSデータが利用できると決定することと、
    前記GNSSデータを使用して前記予備ソースからの前記時間情報を校正することと、をさらに含む、
    請求項1~のいずれか一項に記載の方法。
  7. 慣性ナビゲーションシステム(INS)であって、
    自動運転車両(ADV)の複数の位置に取り付けられた複数のセンサに接続されたセンサインターフェースと、
    前記ADVを操作するホストシステムに接続されたホストインターフェースと、
    前記センサインターフェースおよび前記ホストインターフェースに接続された処理装置と、を含み、前記処理装置は、
    グローバルナビゲーション衛星システム(GNSS)データが前記INSにとって利用できないと決定することと、
    時間情報の予備ソースを識別することと、
    前記時間情報の予備ソースから時間情報を検索することと、
    前記時間情報の予備ソースからの時間情報を使用して第一センサデータを同期させることであって、前記第一センサデータが前記センサの少なくとも1つから取得されることと、
    前記時間情報を使用して同期された前記第一センサデータを前記ホストシステムに送信することであって、前記ホストシステムが、前記ADVの周囲の運転環境を感知し、前記運転環境に基づいて軌跡を計画し、前記軌跡に基づいて前記運転環境での前記ADVのナビゲーションを制御するように構成されることと、
    前記GNSSデータが再び利用できると決定した場合、前記予備ソースからの前記時間情報を前記GNSSデータからの時間に徐々に調整することと、
    を実行するように構成される、
    慣性ナビゲーションシステム(INS)。
  8. 前記GNSSデータが利用できないと決定するために、前記処理装置は、
    閾値期間内に前記GNSSデータが受信されていないと決定することを実行する、
    請求項に記載のシステム。
  9. 前記処理装置はまた、
    前記第一センサデータおよび前記予備ソースに使用される前記時間情報を位置決めモジュールに送信することであって、前記位置決めモジュールが前記第一センサデータおよび前記時間情報を使用して第二センサデータを同期させることを実行する、
    請求項またはに記載のシステム。
  10. 前記時間情報の予備ソースは、リアルタイムクロック(RTC)またはネットワークタイムプロトコル(NTP)のうちの少なくとも1つを含む、
    請求項に記載のシステム。
  11. 前記処理装置はまた、
    前記GNSSデータが利用できると決定することと、
    前記GNSSデータを使用して前記予備ソースからの前記時間情報を校正することと、を実行する、
    請求項10のいずれか一項に記載のシステム。
  12. 命令を記憶する非一時的な機械可読媒体であって、前記命令がプロセッサによって実行されると、前記プロセッサに自動運転車両(ADV)の操作を実行させるものであり、前記操作は、
    慣性ナビゲーションシステム(INS)の処理装置を利用して、グローバルナビゲーション衛星システム(GNSS)データが利用できないと決定することであって、前記INSが前記ADVの複数の位置に取り付けられた複数のセンサに接続されることと、
    時間情報の予備ソースを識別することと、
    前記時間情報の予備ソースから時間情報を検索することと、
    前記時間情報の予備ソースからの時間情報を使用して第一センサデータを同期させることであって、前記第一センサデータが前記センサの少なくとも1つから取得されることと、
    前記時間情報を使用して同期された前記第一センサデータをホストシステムに送信することであって、前記ホストシステムが、前記ADVの周囲の運転環境を感知し、前記運転環境に基づいて軌跡を計画し、前記軌跡に基づいて前記運転環境での前記ADVのナビゲーションを制御するように構成されることと、
    前記GNSSデータが再び利用できると決定した場合、前記予備ソースからの前記時間情報を前記GNSSデータからの時間に徐々に調整することと、を含む、
    機械可読媒体。
  13. GNSSデータが利用できないと決定することは、
    閾値期間内に前記GNSSデータが受信されていないと決定することを含む、
    請求項12に記載の機械可読媒体。
  14. 前記操作は、
    前記第一センサデータおよび前記予備ソースに使用される前記時間情報を位置決めモジュールに送信することであって、前記位置決めモジュールが前記第一センサデータおよび前記時間情報を使用して第二センサデータを同期させることをさらに含む、
    請求項12または13に記載の機械可読媒体。
  15. 前記時間情報の予備ソースは、リアルタイムクロック(RTC)またはネットワークタイムプロトコル(NTP)のうちの少なくとも1つを含む、
    請求項12に記載の機械可読媒体。
  16. 前記第一センサデータは、慣性測定ユニット(IMU)からのデータを含む、
    請求項12に記載の機械可読媒体。
  17. 前記操作は、
    前記GNSSデータが利用できると決定することと、
    前記GNSSデータを使用して前記予備ソースからの前記時間情報を校正することと、をさらに含む、
    請求項1216のいずれか一項に記載の機械可読媒体。
  18. コンピュータプログラムであって、プロセッサにより実行されると、請求項1~のいずれか一項に記載の方法を実行させるコンピュータプログラム。
JP2022519715A 2020-03-26 2020-03-26 自動運転システム内の慣性ナビゲーションシステムの時間決定 Active JP7355930B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/081473 WO2021189373A1 (en) 2020-03-26 2020-03-26 Time determination of an inertial navigation system in autonomous driving systems

Publications (2)

Publication Number Publication Date
JP2022550542A JP2022550542A (ja) 2022-12-02
JP7355930B2 true JP7355930B2 (ja) 2023-10-03

Family

ID=77855866

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022519715A Active JP7355930B2 (ja) 2020-03-26 2020-03-26 自動運転システム内の慣性ナビゲーションシステムの時間決定

Country Status (5)

Country Link
US (1) US11662745B2 (ja)
JP (1) JP7355930B2 (ja)
KR (1) KR20220132650A (ja)
CN (1) CN113728211A (ja)
WO (1) WO2021189373A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11343138B2 (en) * 2020-04-23 2022-05-24 GM Global Technology Operations LLC Method and apparatus for fault tolerant ethernet time synchronization
CN115348657B (zh) * 2022-08-15 2024-02-13 小米汽车科技有限公司 用于车辆时间同步的系统、方法及车辆

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080215202A1 (en) 1997-10-22 2008-09-04 Intelligent Technologies International, Inc. Method and System for Guiding a Person to a Location
US20180302751A1 (en) 2016-07-11 2018-10-18 Veniam, Inc. Systems and methods for vehicular positioning based on wireless fingerprinting data in a network of moving things including, for example, autonomous vehicles
WO2019039983A1 (en) 2017-08-21 2019-02-28 Sony Mobile Communications Inc METHOD FOR REPORTING POSITIONING DATA
WO2019222589A1 (en) 2018-05-18 2019-11-21 Zendar Inc. Systems and methods for detecting objects
US20200225363A1 (en) 2019-01-16 2020-07-16 GM Global Technology Operations LLC Maintaining vehicle position accuracy

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8860609B2 (en) 2008-10-23 2014-10-14 Texas Instruments Incorporated Loosely-coupled integration of global navigation satellite system and inertial navigation system
US9116220B2 (en) * 2010-12-27 2015-08-25 Microsoft Technology Licensing, Llc Time synchronizing sensor continuous and state data signals between nodes across a network
CN103557865A (zh) 2013-11-12 2014-02-05 武汉大学 一种撞击式脉冲触发时间同步装置
CN103675844B (zh) 2013-11-18 2015-10-21 航天恒星科技有限公司 一种gnss/ins组合导航同步模拟系统
US20160349379A1 (en) * 2015-05-28 2016-12-01 Alberto Daniel Lacaze Inertial navigation unit enhaced with atomic clock
CN105259787B (zh) * 2015-11-03 2018-06-08 中国电子科技集团公司第五十四研究所 一种组合导航半物理仿真测试同步控制方法
US11367354B2 (en) 2017-06-22 2022-06-21 Apollo Intelligent Driving Technology (Beijing) Co., Ltd. Traffic prediction based on map images for autonomous driving
US11636077B2 (en) * 2018-01-05 2023-04-25 Nio Technology (Anhui) Co., Ltd. Methods, devices, and systems for processing sensor data of vehicles
US10999731B2 (en) * 2018-02-20 2021-05-04 Veniam, Inc. Systems and methods for real-time handling and processing of data in a network of moving things
US11086317B2 (en) * 2018-03-30 2021-08-10 Intel Corporation Emotional adaptive driving policies for automated driving vehicles
US10816995B2 (en) * 2018-08-24 2020-10-27 Baidu Usa Llc GPS based high precision timestamp generation circuit for an autonomous driving vehicle
US10996681B2 (en) * 2018-08-24 2021-05-04 Baidu Usa Llc Time source recovery system for an autonomous driving vehicle
US10788841B2 (en) * 2018-08-24 2020-09-29 Baidu Usa Llc Hardware centralized time synchronization hub for an autonomous driving vehicle
US10969783B2 (en) * 2018-08-24 2021-04-06 Baidu Usa Llc Time source ranking system for an autonomous driving vehicle
US11029165B2 (en) * 2018-10-11 2021-06-08 Baidu Usa Llc Sensor integration and synchronization unit for an autonomous driving vehicle
CN109269471B (zh) * 2018-11-09 2021-07-20 上海华测导航技术股份有限公司 一种新型gnss接收机倾斜测量系统及方法
US11175410B2 (en) * 2019-04-17 2021-11-16 Baidu Usa Llc Flexible GPS message decoder for decoding GPS messages during autonomous driving
CN110426033A (zh) 2019-07-30 2019-11-08 上海理工大学 基于松耦合imu阵列导航系统的时间同步算法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080215202A1 (en) 1997-10-22 2008-09-04 Intelligent Technologies International, Inc. Method and System for Guiding a Person to a Location
US20180302751A1 (en) 2016-07-11 2018-10-18 Veniam, Inc. Systems and methods for vehicular positioning based on wireless fingerprinting data in a network of moving things including, for example, autonomous vehicles
WO2019039983A1 (en) 2017-08-21 2019-02-28 Sony Mobile Communications Inc METHOD FOR REPORTING POSITIONING DATA
WO2019222589A1 (en) 2018-05-18 2019-11-21 Zendar Inc. Systems and methods for detecting objects
US20200225363A1 (en) 2019-01-16 2020-07-16 GM Global Technology Operations LLC Maintaining vehicle position accuracy

Also Published As

Publication number Publication date
CN113728211A (zh) 2021-11-30
JP2022550542A (ja) 2022-12-02
KR20220132650A (ko) 2022-09-30
US11662745B2 (en) 2023-05-30
WO2021189373A1 (en) 2021-09-30
US20210302998A1 (en) 2021-09-30

Similar Documents

Publication Publication Date Title
EP3614176B1 (en) A hardware centralized time synchronization hub for an autonomous driving vehicle
CN111835496B (zh) 在自动驾驶系统的不同计算节点之间的定时同步方案
CN110895147B (zh) 自动驾驶车辆的用相机捕获图像数据的图像数据获取逻辑
CN110857993B (zh) 用于自动驾驶车辆基于gps的高精度时间戳生成电路
US11488389B2 (en) Verifying timing of sensors used in autonomous driving vehicles
CN110857099B (zh) 用于自动驾驶车辆的时间源恢复系统
EP3614222B1 (en) A time source ranking system for an autonomous driving vehicle
EP3891474B1 (en) Synchronizing sensors of autonomous driving vehicles
CN112543876B (zh) 用于自动驾驶车辆中的传感器同步性数据分析的系统
US11592581B2 (en) Dual inertial measurement units for inertial navigation system
US20200132830A1 (en) Extended perception based on radar communication of autonomous driving vehicles
JP7355930B2 (ja) 自動運転システム内の慣性ナビゲーションシステムの時間決定
US11609342B2 (en) Latency compensation in inertial navigation system
US20240045027A1 (en) Adaptive lidar data processing for driverless vehicle
US20240051569A1 (en) Long-term evolution computing platform for autonomous vehicles based on shell and nut architecture

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220404

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220404

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230620

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230831

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: 20230912

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230921

R150 Certificate of patent or registration of utility model

Ref document number: 7355930

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150