以下、図面を参照しながら、本開示の様々な例示的な実施例を詳細に説明する。以下の内容を注意されたい。特に具体的に説明しない限り、これらの実施例において記載された部品及びステップの相対的配置、数式及び数値は、本開示の範囲を限定するものではないことに留意されたい。
同時に、明らかに、説明の利便性のために、図面中に示された各部分の寸法は実際の比率関係に応じて描画されるものではない。
以下、少なくとも1つの例示的な実施例についての説明は、本質的に例示的なものに過ぎず、決して本開示及びその適用又は使用を限定するものではない。
当業者に公知の技術、方法及び機器について詳細に検討していない場合があるが、適切な場合で、前記技術、方法及び機器は、明細書の一部と見なすべきである。
類似の符号及び文字が以下の図面において類似のものを表すため、あるものが1つの図面において定義されれば、後の図面においてそれをさらに検討する必要がないことに留意されたい。
本開示の実施例は、端末機器、コンピュータシステム及びサーバなどの電子機器に適用されてよく、多数の他の汎用又は専用のコンピューティングシステム環境又は構成と共に動作可能である。端末機器、コンピュータシステム及びサーバなどの電子機器と共に使用するのに適する周知の端末機器、コンピューティングシステム、環境及び/又は構成の例は、パーソナルコンピュータシステム、サーバコンピュータシステム、シンクライアント、ファットクライアント、手持ち又はラップトップ設備、マイクロプロセッサに基づくシステム、セットトップボックス、プログラマブル消費電子製品、ネットワークパーソナルコンピュータ、小型コンピュータシステム、大型コンピュータシステム及び上記任意のシステムを含む分散型クラウドコンピューティング技術環境などを含むが、これらに限定されない。
端末機器、コンピュータシステム及びサーバなどの電子機器について、コンピュータシステムにより実行されるコンピュータシステム実行可能命令(例えば、プログラムモジュール)の一般的なコンテキストで説明してよい。一般的に、プログラムモジュールは、特定のタスクを実行するか又は特定の抽象データ型を実現するルーチン、プログラム、ターゲットプログラム、コンポーネント、ロジック及びデータ構造などを含んでよい。コンピュータシステム/サーバは分散型クラウドコンピューティング技術環境において実施することができ、分散型クラウドコンピューティング技術環境において、タスクは通信ネットワークによりリンクされた遠隔処理装置によって実行される。分散型クラウドコンピューティング環境において、プログラムモジュールは、記憶機器を含むローカル又は遠隔コンピューティングシステムの記憶媒体に位置してよい。
例示的な実施例
図1は、本開示の軌跡追跡コントローラのテスト方法の1つの実施例のフローチャートである。図1に示すように、該実施例の方法は、S100、S110、S120及びS130を含む。以下、各ステップについて詳細に説明する。
S100では、第1の移動設備がテスト対象軌跡追跡コントローラに制御されていない走行状態にある場合、第1の移動設備の複数の測位情報及び複数の運動状態情報を取得する。
好ましい一例では、本開示のS100における第1の移動設備は、テスト基準軌跡を形成する移動設備である。テスト基準軌跡を形成する移動設備とは、運転又は遠隔制御又は操作などの制御方式により、移動を実現する設備を指す。テスト基準軌跡を形成する移動設備は、車両、ロボット及びロボットアームなどを含むが、これらに限定されず、これにより本開示に係る技術手段が様々な応用シーンにおいて適用できることに役立つ。上記第1の移動設備がテスト対象軌跡追跡コントローラに制御されていない走行状態にあることは、上記第1の移動設備が非自動運転モード(例えば、運転者運転モード)の走行状態にあることであり、該場合に取得されたテスト基準軌跡は、運転者の運転行為を記録するものに相当する。上記第1の移動設備がテスト対象軌跡追跡コントローラに制御されていない走行状態にあることは、上記第1の移動設備が該テスト対象軌跡追跡コントローラの制御以外の、他のコントローラの制御下での無人運転の走行状態にあることなどであってもよい。本開示におけるテスト基準軌跡は、第2の移動設備におけるテスト対象軌跡追跡コントローラが第2の移動設備に追跡させる必要がある走行の軌跡である。
好ましくは、テスト基準軌跡を形成する第1の移動設備が車両である場合、該車両は、自動運転制御を実現できる車両であってよい。当然のことながら、自動運転制御を実現できず、運転者の運転行為のみに基づいて走行する車両であってもよい。すなわち、該車両は、運転者の運転行為により、テスト基準軌跡を形成することができる。本開示は、運転者が車両を運転する方式を利用してテスト基準軌跡を形成し、運転者がテストの必要に応じて車両を運転し様々なパターンのテスト基準軌跡を形成することができるため、本開示は、テスト基準軌跡を形成する利便性及び多様性を向上させることに役立ち、かつ軌跡追跡コントローラのテストに人間の運転習慣により合致するテスト基準軌跡を提供することに役立つ。
好ましくは、テスト基準軌跡を形成する第1の移動設備がロボットである場合、該ロボットは、顧客にサービスを提供するロボットなどであってよい。テスト基準軌跡を形成する移動設備がロボットアームである場合、該ロボットアームは、製造ライン上のロボットアームなどであってよい。ロボット又はロボットアームは、手動遠隔制御などの手動操作方式により、テスト基準軌跡を形成することができる。本開示は、遠隔制御などの手動操作方式を利用してテスト基準軌跡を形成し、手動操作がテストの必要に応じてロボットを制御し様々なパターンのテスト基準軌跡を形成することができるため、本開示は、テスト基準軌跡を形成する利便性及び多様性を向上させることに役立ち、かつ軌跡追跡コントローラのテストに人間の運転習慣により合致するテスト基準軌跡を提供することに役立つ。
特に説明すべきものとして、下記実施形態では、車両を例として、本開示に係る軌跡追跡コントローラのテストの技術手段を説明する場合があるが、これは本開示に係る技術手段が車両のみに適用することを示すものではない。
好ましい一例では、本開示の第1の移動設備に測位装置を設置し、測位装置により測位信号(例えば衛星測位信号など)を受信してよく、このように、本開示は、測位装置が受信した測位信号により、第1の移動設備の測位情報を取得することができる。好ましくは、第1の移動設備の測位情報は、測位時間(例えば測位タイムスタンプ)及び第1の移動設備の位置情報を含むが、これらに限定されない。第1の移動設備の位置情報は、第1の移動設備が実世界座標系における座標を含むが、これに限定されない。好ましくは、実世界座標系は、二次元座標系であってよい。例えば、実世界座標系は、UTM(Universal Transverse Mercator、汎用横軸メルカトル投影)座標系を含むが、これに限定されない。例えば、第1の移動設備の位置情報は、UTM座標系に基づくX軸座標及びY軸座標であってよい。本開示は、二次元座標系における第1の移動設備の座標を使用して第1の移動設備の位置を示し、テスト軌跡追跡コントローラの正確度を満たすことができる場合、テスト過程での計算量を簡略化することに役立ち、これによりテストの利便性を向上させることに役立つ。
好ましい一例では、本開示における測位装置は、RTK(Real-Time Kinematic、リアルタイムキネマティック)キャリア位相差分技術に基づく測位装置を含んでよいが、これに限定されない。例えば、該測位装置は、RTK基地局と無線通信できる、RTKキャリア位相差分技術に基づく移動局設備(以下、RTK移動局設備と略称する)を含むが、これに限定されない。例えば、RTK移動局設備は、NovAtel移動局設備などを含むが、これに限定されない。好ましくは、RTK基地局は、一般的に、RTK移動局設備の近傍に設置され、RTK基地局の架設高さ及び架設位置などは、信号伝送の実際の必要に応じて設置されてよい。好ましくは、RTK基地局は、高層ビルの最上層又は通信タワーの頂部などの固定位置に架設されてよい。RTK基地局は、移動可能な設備に架設されてもよい。例えば、RTK基地局は、一定の高さを有する車両(例えば、昇降装置を有する車両など)に架設されてよい。好ましくは、本開示は、RTK基地局を移動可能な設備に架設することにより、RTK基地局を対応するテスト場所に移動しやく、これにより対応するテスト場所で軌跡追跡コントローラのテストを実現することに役立つ。
特に説明すべきものとして、RTK基地局の架設高さは、一般的に、RTK基地局が位置する環境における建物などの信号障害物の高さに関連している。好ましくは、RTK基地局の架設高さは、一般的に、その位置する環境における各信号障害物の高さより高い。広い環境において、RTK基地局の架設高さは低くてよい。一方、高層ビルが林立する都市道路環境において、RTK基地局は、一般的に、高層ビルの最上層などの位置に架設される。また、RTK基地局が移動可能な設備に架設されてもよいが、軌跡追跡コントローラのテスト過程で、RTK基地局の位置は固定される。
好ましい一例では、本開示における第1の移動設備に設置された移動局設備は、衛星からの衛星測位信号(例えば、GPS測位信号又は北斗測位信号など)、及びRTK基地局からのRTKデータを受信することができる。衛星測位信号に基づいて、移動局設備は、第1の移動設備の概略位置情報を取得することができ、該概略位置情報の測位精度は、一般的にメートルレベルである。移動局設備は、受信された衛星測位信号及びRTKデータに基づいて、第1の移動設備の最終位置情報を取得することができ、該位置情報の位置測位精度は、ミリメートルレベルに達することができる。本開示は、従来の処理方式を採用して衛星測位信号及びRTKデータを処理することにより、第1の移動設備の高精度の位置情報を取得することができる。例えば、エポックに基づくリアルタイム処理などであり、ここでは詳細な説明を省略する。
好ましくは、本開示における第1の移動設備に設置された移動局設備の一例は、図2に示される。図2には、移動局設備1は、アンテナ11、受信器12及びルータ13を含んでよい。移動局設備1は、アンテナ11によって衛星2と無線情報伝送を行う。移動局設備1は、ルータ13によってRTK基地局3と無線情報伝送を行う。RTK基地局3は、衛星2と無線情報伝送を行うことができる。アンテナ11は、GPSアンテナ又は北斗アンテナなどを含むが、これらに限定されない。移動局設備1は、アンテナ11によって衛星2からの衛星測位信号を受信することができる。衛星2は、GPS(Global Positioning System、全地球測位システム)衛星又は北斗衛星などを含むが、これらに限定されない。衛星測位信号は、GPSに基づく測位信号又は北斗に基づく測位信号などを含むが、これらに限定されない。本開示における衛星測位信号は、測位時間(すなわち、位置に対応する時間)及び位置情報を含んでよいが、これらに限定されない。衛星測位信号における位置情報の測位精度は、一般的に、メートルである。移動局設備1は、そのルータ13によってRTK基地局3からのRTKデータを受信することができる。RTKデータは、RTKを説明する情報(以下、差分データと称する)を含んでよいだけでなく、差分データに対応する時間などをさらに含んでもよい。差分データに対応する時間が衛星2からのものであるため、差分データに対応する時間を測位時間と称してもよい。ルータ13は、Cellular 4G Router(セルラ4Gルータ)などを含むが、これに限定されない。受信器12は、アンテナ11が受信した対応する衛星測位信号における位置情報と、ルータ13が受信した対応するRTKデータにおける差分データとを計算することにより、移動局設備1のミリメートルレベルの位置情報を取得することができ、これにより本開示は、第1の移動設備への正確な測位を実現することができる。
好ましい一例では、S100で取得された第1の移動設備の測位情報は、測位時間及び第1の移動設備の位置情報を含むが、これらに限定されない。受信器12は、同じ測位時間を有する衛星測位信号及びRTKデータに基づいて、該測位時間に対応する正確な測位の位置情報を取得することができる。同じ測位時間を有する衛星測位信号及びRTKデータがない場合、受信器12は、測位時間の時間間隔が所定の時間間隔より小さいという要件を満たす衛星測位信号及びRTKデータに基づいて、衛星測位信号における測位時間に対応する正確な測位の位置情報を取得することができる。S100で取得された測位情報における測位時間としては、衛星測位信号における測位時間を用いてよい。
好ましい一例では、本開示における第1の移動設備の運動状態情報は、姿勢、速度及び加速度に対応する時間(以下、速度時間と称する)、速度の大きさ及び加速度の大きさなどを含んでよいが、これらに限定されない。ここでの姿勢は、第1の移動設備のヨー角(実世界座標系におけるローリング角、すなわちYawと称してもよい)を含むが、これに限定されない好ましくは、第1の移動設備の姿勢はさらに、第1の移動設備のピッチ角(Pitch)、ロール角(Roll)及び姿勢に対応する時間(以下、姿勢時間と称する)などを含んでもよい。好ましくは、本開示は、第1の移動設備に取り付けられたIMU(Inertial Measurement Unit、慣性測定ユニット)により出力されたデータに基づいて、第1の移動設備の姿勢を取得することができる。移動局設備にIMUが集積される場合、測位時間を姿勢時間としてよく、かつ本開示は、移動局設備が出力した情報に基づいて、測位時間、測位時間に対する位置情報及び測位時間に対応するヨー角を取得することができる。
好ましい一例では、第1の移動設備が速度の大きさ及び加速度を提供する能力を有する場合、本開示は、第1の移動設備から第1の移動設備の速度の大きさ及び加速度を読み取ることができる。例えば、本開示は、第1の移動設備のCAN(Controller Area Network、コントローラエリアネットワーク)バスにより、第1の移動設備の現在時間の速度の大きさ及び加速度などをリアルタイムに読み取ることができる。ここで、加速度の数値は、正負符号を付けてよく、該正負符号は、加速度の方向を示し得る。例えば、正符号は、加速度の方向が速度の方向と同じであることを示し、負符号は、加速度の方向が速度の方向と逆であることを示す。
好ましくは、S100は、元データ蓄積段階と称されてよい。S100で蓄積された元データは、複数の軌跡点情報を形成する。S100で蓄積された元データは一般的に冗長であり、例えば、位置情報の密集度が高く、かつ位置情報が重複する可能性がある。複数の軌跡点情報を形成する過程で、一般的に、冗長な情報をスクリーニングすることにより、軌跡点情報が冗長である現象の発生を回避する。
好ましくは、S100で蓄積された元データに具体的に含まれるコンテンツは、一般的に、テスト対象軌跡追跡コントローラに必要な入力情報に基づいて設置されたものである。テスト対象軌跡トラッカが他の情報をさらに必要とする場合、本開示は、元データ蓄積段階で、他の情報を取得すべきである。
好ましくは、第1の移動設備に設置された慣性測定ユニットと第1の移動設備に設置された測位装置(例えば、移動局設備)とは互いに独立して設置される場合、S100で蓄積された元データは、測位データセット、姿勢データセット及び速度データセットという3つのデータセットを含んでよい。測位データセットにおけるデータレコードは、第1の移動設備に設置された測位装置からのものである。測位データセットにおけるいずれかのデータレコードは、少なくとも測位時間及び正確な測位の位置情報を含む。姿勢データセットにおけるデータレコードは、第1の移動設備に設置された慣性測定ユニットからのものである。姿勢データセットにおけるいずれかのデータレコードは、少なくとも姿勢時間及び第1の移動設備のヨー角を含む。好ましくは、姿勢データセットにおけるいずれかのデータレコードはさらに、第1の移動設備のピッチ角及びロール角を含んでもよい。下記実施形態では、多くは姿勢が具体的にヨー角であることを例として説明したが、下記説明における姿勢が具体的にヨー角及びピッチ角であるか、又は具体的にヨー角及びロール角であるか、又は具体的にヨー角、ピッチ角及びロール角であることは、完全に実行可能であることを留意すべきである。速度データセットにおけるデータレコードは、第1の移動設備自身(例えば、第1の移動設備におけるCANバスなど)からのものである。速度データセットにおけるいずれかのデータレコードは、少なくとも速度時間、速度の大きさ及び加速度などを含む。
好ましくは、第1の移動設備に設置された測位装置(例えば、移動局設備)が第1の移動設備の姿勢を測定する機能を有する場合、S100で蓄積された元データは、測位及び姿勢データセットと速度データセットという2つのデータセットを含んでもよい。測位及び姿勢データセットにおけるデータレコードは、第1の移動設備に設置された測位装置からのものである。測位及び姿勢データセットにおけるいずれかのデータレコードは、少なくとも測位時間、正確な測位の位置情報及び第1の移動設備のヨー角を含む。速度データセットにおけるデータレコードは、第1の移動設備自身(例えば、第1の移動設備におけるCANバスなど)からのものである。速度データセットにおけるいずれかのデータレコードは、少なくとも速度時間、速度の大きさ及び加速度(正負符号付きの加速度数値)などを含む。
S110では、測位情報及び運動状態情報に基づいて、複数の軌跡点情報を決定し、かつ複数の軌跡点情報を含むテスト基準軌跡を形成する。
好ましい一例では、本開示で生成された複数の軌跡点情報はテスト基準軌跡を形成する。つまり、本開示のテスト基準軌跡は、少なくとも複数の軌跡点情報を含む。全ての軌跡点情報は1本のテスト基準軌跡と考えられる。好ましくは、本開示におけるいずれかの軌跡点情報は、いずれも軌跡点位置情報、軌跡点に対応する移動設備の姿勢、軌跡点に対応する速度の大きさ及び速度の方向、軌跡点に対応する加速度の大きさ及び加速度の方向を含んでよい。好ましくは、いずれかの軌跡点情報はさらに、測位時間及び軌跡点に対応する軌跡曲率などを含んでもよい。好ましくは、テスト基準軌跡は1つのデータセットであってよく、該データセットは複数本のデータレコードを含み、各本のデータレコードは1つの軌跡点に対応し、かつ1本のデータレコードは1つの軌跡点情報である。
好ましい一例では、本開示は、元データを利用して軌跡点情報を形成する場合、一般的に元データに対して冗長処理を行う必要があり、これにより元データにおける重複データ、密集しすぎるデータなどの冗長データを除去して、テスト基準軌跡の軌跡点分布の合理性を向上させることに役立つ。好ましくは、本開示は、先に上記取得された測位情報に基づいてテスト基準軌跡の各軌跡点位置情報を決定し、次に、上記取得された全ての姿勢及び運動状態情報に基づいて、各軌跡点の他の情報を決定してよい。
好ましくは、本開示がテスト基準軌跡の各軌跡点位置情報を決定する過程は、予め設定された隣接する軌跡点間の所定の距離に基づいて、複数の測位情報をサンプリングして、複数の軌跡点位置情報を取得することであってよい。例えば、本開示は、先に上記取得された全ての測位情報から1つの測位情報を選択し、かつ今回選択された該測位情報における位置情報をテスト基準軌跡の開始軌跡点位置情報とし、次に、他の測位情報における位置情報及び開始軌跡点位置情報に基づいて距離計算を行い、かつ距離計算の結果及び上記所定の距離に基づいて、他の測位情報から開始軌跡点位置情報との距離が所定の距離と最も近い測位情報を選択し、かつ該選択された測位情報における位置情報を開始軌跡点の次の軌跡点位置情報とし、以下、同様にして、テスト基準軌跡における全ての軌跡点の位置情報を取得するまで停止する。取得された全ての軌跡点の位置情報において、いずれかの2つの隣接する軌跡点間の距離は、一般的に所定の距離であるか又は約所定の距離である。また、軌跡点の位置情報を取得するとき、さらに該位置情報に対応する測位時間を取得すべきである。本開示における所定の距離は、定数であり、所定の距離の大きさは、実際の必要に応じて設置されてよく、例えば、所定の距離は、20ミリメートルなどを含むが、これに限定されない。
本開示は、所定の距離を利用して測位情報をサンプリングすることにより、データの冗長現象を消滅させ、さらに軌跡点を均一に分布させることができ、すなわち、テスト基準軌跡に対する平滑化処理を実現することができ、これによりテスト基準軌跡の合理性を向上させることに役立つ。
好ましい一例では、移動局設備の出力したデータが測位データセットを形成する場合、本開示は、テスト基準軌跡の各軌跡点位置情報を決定した後、複数の軌跡点位置情報にそれぞれ対応する測位時間に基づいて、複数の姿勢と複数の運動状態情報をそれぞれサンプリングして、各軌跡点にそれぞれ対応する姿勢と運動状態情報を取得してよい。例えば、いずれかの軌跡点に対して、本開示は、姿勢データセットの各データレコードから、測位時間に最も近い1つの姿勢時間を検索し、かつ該姿勢時間に対応する、第1の移動設備のヨー角を該軌跡点に対応するヨー角としてよい。さらに例えば、いずれかの軌跡点に対して、本開示は、姿勢データセットの各データレコードから、測位時間に最も近い少なくとも2つの姿勢時間を検索し、かつ少なくとも2つの姿勢時間にそれぞれ対応する、第1の移動設備のヨー角を計算し(例えば、ヨー角の平均値などを計算する)、かつ計算結果を該軌跡点に対応するヨー角としてもよい。
いくつかの応用シーン(例えば、移動局設備と慣性測定ユニットとは互いに独立して設置された応用シーン)においては、測位時間と姿勢時間は一般的に同期せず、本開示は、測位時間を基準とし、姿勢をサンプリングすることにより、測位時間と姿勢時間とのタイミング合わせを実現して、テスト基準軌跡を迅速で正確に取得することに役立つ。
好ましい一例では、移動局設備が出力したデータが測位及び姿勢データセットを形成する場合、本開示は、テスト基準軌跡の各軌跡点位置情報を決定すると共に、各軌跡点に対応するヨー角を決定し、次に、複数の軌跡点位置情報にそれぞれ対応する測位時間に基づいて、複数の運動状態情報をそれぞれサンプリングすることにより、各軌跡点にそれぞれ対応する姿勢及び運動状態情報を取得してよい。例えば、いずれかの軌跡点に対して、本開示は、速度データセットの各データレコードから、測位時間に最も近い1つの速度時間を検索し、かつ該速度時間に対応する、第1の移動設備の速度の大きさ及び加速度を該軌跡点に対応する速度の大きさ及び加速度としてよい。さらに例えば、いずれかの軌跡点に対して、本開示は、速度データセットの各データレコードから、測位時間に最も近い少なくとも2つの姿勢時間を検索し、かつ少なくとも2つの姿勢時間にそれぞれ対応する、第1の移動設備のヨー角を計算し(例えば、ヨー角の平均値などを計算する)、かつ計算結果を該軌跡点に対応するヨー角としてもよい。
いくつかの応用シーンにおいては、測位時間と速度時間は一般的に同期せず、本開示は、測位時間を基準とし、運動状態情報をサンプリングすることにより、測位時間と速度時間のタイミング合わせを実現して、テスト基準軌跡を迅速で正確に取得することに役立つ。
好ましい一例では、いずれかの軌跡点に対して、本開示は、該軌跡点の前後の2つの軌跡点間の接続線の勾配に基づいて、該軌跡点に対応する速度の方向を決定してよく、該速度の方向を加速度数値の正負符号と組み合わせて、加速度の方向を決定することができ、例えば、加速度の方向は速度の方向と同じであるか又は速度の方向と逆である。該軌跡点の前後の2つの軌跡点の接続線は、該軌跡点の前に位置するn番目の軌跡点と該軌跡点の後に位置するm番目の軌跡点との接続線であってよい。ここで、n及びmは、いずれも1以上の整数であり、かつn及びmの数値は等しくてよく、n及びmの数値は、大きすぎないことが好ましく、例えば4又は5などを超えないことが好ましく、速度の方向が不正確であるなどの現象を回避することに役立ち、これによりテスト基準軌跡を迅速で正確に取得することに役立つ。
好ましくは、本開示は、他の方式を用いて軌跡点の速度の方向を取得してよく、例えば、本開示は、複数の軌跡点を離散点として曲線フィッティングを行い、対応する曲線式を取得した後、該曲線式を利用して離散点とされたいずれかの軌跡点の速度の方向を決定してよい。
好ましくは、本開示は、他の方式を用いて軌跡点の曲率を取得してよく、例えば、本開示は、複数の軌跡点を離散点として曲線フィッティングを行い、対応する曲線式を取得した後、該曲線式を利用して離散点とされたいずれかの軌跡点の曲率を決定してよい。
好ましい一例では、本開示のテスト基準軌跡における複数の軌跡点情報は、図4a~図4dに示される。図4aにおける曲線は、複数の軌跡点位置情報がUTM座標系において形成する軌跡線を示す。図4aにおける横座標は、UTM座標系のX軸(単位はメートルである)を示し、縦座標は、UTM座標系のY軸(単位はメートルである)を示す。図4bにおける曲線は、複数の軌跡点にそれぞれ対応する速度の大きさが形成する曲線を示す。図4bの横座標は、開始軌跡点に対する距離(単位はメートルである)を示し、縦座標は、軌跡点に対応する速度の大きさ(単位はメートル/秒である)を示す。図4cにおける曲線は、複数の軌跡点の速度の方向が形成する曲線を示す。図4cの横座標は、開始軌跡点に対する距離(単位はメートルである)を示し、縦座標は、軌跡点に対応する速度の方向(例えば、上記θ)を示す。図4dの横座標は、開始軌跡点に対する距離(単位はメートルである)を示し、縦座標は、軌跡点に対応する曲率を示す。
本開示のテスト基準軌跡を形成する方式は、テスト基準軌跡の形成が高精度地図及び区画線などの要因に制限されることを回避することに役立つ。このように、テスト者は、テストの必要に応じて様々な形状のテスト基準軌跡をいつでもどこでも柔軟に設定することができ、かつテスト基準軌跡を設定する過程は天気及び光線などの要因を考慮する必要がない。例えば、朝又は昼又は夜に、田舎道にテスト基準軌跡を設定することができる。さらに例えば、連続的な直角と曲がりがあるテスト基準軌跡を設定してよく、S字状のテスト基準軌跡を設定してもよく、さらに8字状又はO字状又は螺旋状などの形状のテスト基準軌跡を設定してもよい。これから分かるように、本開示は、テスト基準軌跡の地理的位置設定範囲及び時間設定範囲を拡大させることに役立つだけでなく、そしてテスト基準軌跡を形成する実現コストを低減することに役立ち、さらにテスト基準軌跡の多様性を向上させることに役立ち、また、テスト対象軌跡追跡コントローラの様々なテスト基準軌跡での性能表現を取得することに役立つ。さらに、本開示は、テスト対象軌跡追跡コントローラの様々なテスト基準軌跡での性能表現に基づいて、テスト対象軌跡追跡コントローラのパラメータを意図的に調整することにより、軌跡追跡コントローラの性能を向上させることに役立つことができる。
好ましくは、本開示におけるテスト対象軌跡追跡コントローラのパラメータは、テスト対象軌跡追跡コントローラが入力情報に基づいて自動走行制御命令を形成する過程で使用されたパラメータであってよい。本開示に係るテスト方法は、自動運転中の様々なアーキテクチャの軌跡追跡コントローラに適用され、テスト結果に基づいてコントローラパラメータを最適化して調整することができ、例えば、PID(比例P-積分I-微分D)三相アーキテクチャの軌跡追跡コントローラに適用され、三相パラメータを調整することができるがこれに限定されず、さらに例えば、MPC(Model Predictive Control、モデル予測制御)アーキテクチャ軌跡追跡コントローラに適用され、誤差、制御命令に関連する閉ループ最適化制御パラメータを調整することができるがこれに限定されない。これにより、軌跡追跡コントローラの制御性能を向上させる。
S120では、テスト基準軌跡の少なくとも一部の軌跡点情報に基づいて、テスト対象軌跡追跡コントローラに入力情報を提供する。
好ましい一例では、本開示におけるテスト対象軌跡追跡コントローラは、第2の移動設備に設置される。テスト対象軌跡追跡コントローラが第2の移動設備に設置されるため、シミュレータを利用して軌跡追跡コントローラをテストする従来の方式と比較して、本開示は、シミュレータのテスト環境と実環境との間の差異によるテスト結果が不正確であるという現象を回避することに役立ち、さらに軌跡追跡コントローラが実際の移動設備に配置される場合、さらにデバッグする必要があることによる時間コスト及び人件コストを浪費するという現象を回避することができる。
いくつかの応用シーンにおいては、第2の移動設備はS100における第1の移動設備と同一の移動設備であってよい。例えば、車両に軌跡追跡コントローラが取り付けられると、本開示は、該車両中の軌跡追跡コントローラをテストする必要があり、すなわち、該車両中の軌跡追跡コントローラはテスト対象軌跡追跡コントローラである。本開示には、まず運転者が該車両を運転して所定のルート(例えば、S字状ルート又は8字状ルート又はO字状ルート又は螺旋形ルートなど)に応じて走行させ、このとき、該車両は第1の移動設備とされる。本開示は、該車両の走行過程で元データを収集して記憶し続けることができる(例えば、S100に記載の方法を参照)。本開示は、該車両の走行過程で又は該車両の走行が終了した後、上記S110に記載の方法を利用して収集されて記憶された元データを処理することにより、複数の軌跡点情報を生成することができ、全ての軌跡点情報はテスト基準軌跡を形成する。その後、該車両を所定のルート上のいずれかの位置(例えば、所定のルートの出発点)又は所定のルートの近傍(例えば、所定のルートの出発点の近傍)に設置することにより、該車両をテスト対象軌跡追跡コントローラに制御された走行状態にさせ、すなわち、該車両は自動運転モードにあり、該車両は第2の移動設備とされる。
いくつかの応用シーンにおいては、第2の移動設備は、S100における第1の移動設備と異なる移動設備であってもよい。例えば、車両に軌跡追跡コントローラが取り付けられると、本開示は、該車両中の軌跡追跡コントローラをテストする必要があり、すなわち、該車両中の軌跡追跡コントローラはテスト対象軌跡追跡コントローラである。本開示には、まず運転者が他の車両を運転して所定のルート(例えば、S字状ルート又は8字状ルート又はO字状ルート又は螺旋形ルートなど)に応じて走行させ、このとき、該他の車両は第1の移動設備とされる。該他の車両には、軌跡追跡コントローラが取り付けられてよく、軌跡追跡コントローラが取り付けられなくてもよい。本開示は、該他の車両の走行過程で元データを収集して記憶し続けることができる。本開示は、該他の車両の走行過程で又は該他の車両の走行が終了した後、上記S110に記載された方法を利用して収集されて記憶された元データを処理することにより、複数の軌跡点情報を生成することができ、全ての軌跡点情報はテスト基準軌跡を形成する。その後、テスト対象軌跡追跡コントローラが取り付けられた車両を所定のルート上のいずれかの位置(例えば、所定のルートの出発点)又は所定のルートの近傍(例えば、所定のルートの出発点の近傍)に設置することにより、テスト対象軌跡追跡コントローラが取り付けられた車両をテスト対象軌跡追跡コントローラに制御された走行状態にさせ、すなわち、テスト対象軌跡追跡コントローラが取り付けられた車両は、自動運転モードにあり、これによりテスト対象軌跡追跡コントローラが取り付けられた車両は第2の移動設備とされる。
好ましくは、第1の移動設備と第2の移動設備が2つの異なる移動設備である場合、本開示の第2の移動設備に同様に測位装置が設置されることにより、測位装置により測位信号(例えば、衛星測位信号など)を受信しやくす、このように、本開示は、該測位装置が受信した測位信号により、第2の移動設備の測位情報を取得することができる。同様に、第2の移動設備の測位情報は、測位時間(例えば、測位タイムスタンプ)及び第2の移動設備の位置情報を含むが、これらに限定されない。第2の移動設備の位置情報は、第2の移動設備が実世界座標系(例えば、UTM座標系)における座標を含むが、これに限定されない。好ましくは、第2の移動設備に設置された測位装置は、RTKキャリア位相差分技術に基づく測位装置を含むが、これに限定されない。第2の移動設備に取り付けられた該測位装置は、第1の移動設備に取り付けられた測位装置と同じであってよい。ここでは、繰り返し説明しない。
好ましい一例では、本開示は、第2の移動設備の位置に基づいて、テスト基準軌跡から一部の軌跡(1セグメントの軌跡と称してもよい)をリアルタイムに切り出してよく、切り出せられたこの一部の軌跡をサブテスト基準軌跡と称してもよい。本開示は、リアルタイムに取得されたサブテスト基準軌跡に含まれる軌跡点情報に基づいて、テスト対象軌跡追跡コントローラに対応する入力情報を提供することができる。好ましくは、本開示は、毎回サブテスト基準軌跡を取得する際に、該サブテスト基準軌跡における軌跡点情報に基づいて、テスト対象軌跡追跡コントローラに一回の入力情報を提供する。
本開示は、第2の移動設備の位置に基づいてサブテスト基準軌跡を切り出し、かつサブテスト基準軌跡を利用してテスト対象軌跡追跡コントローラに入力情報を提供することにより、テスト対象軌跡追跡コントローラに適当な入力情報を提供することを保証することに役立ち、これによりテスト対象軌跡追跡コントローラに制御された第2の移動設備がテスト基準軌跡を追跡し走行することに役立つ。
好ましい一例では、本開示の軌跡点情報に基づいて、テスト対象軌跡追跡コントローラに入力情報を提供する実現過程は、以下のステップ1~ステップ4を含んでよい。
ステップ1では、テスト対象軌跡追跡コントローラが設置された第2の移動設備の現在の位置情報を取得する。
好ましくは、本開示は、所定の周波数(例えば、100Hzなど)に基づいて、テスト対象軌跡追跡コントローラが設置された第2の移動設備の現在の位置情報をリアルタイムに取得し、すなわち、本開示は、一定時間(例えば0.01秒)ごとに第2の移動設備の現在の位置情報を取得してよい。例えば、第2の移動設備がテスト基準軌跡の出発点の位置で準備完了した後、本開示は、所定の周波数に基づいて、第2の移動設備に設置された移動局設備から第2の移動設備の現在の位置情報をリアルタイムに取得する。
好ましくは、本開示が取得した第2の移動設備の現在の位置情報は、ミリメートルレベルの位置情報であってよく、このように、本開示は、第2の移動設備への正確な測位を実現することができ、これにより切り出せられたサブテスト基準軌跡の正確性を向上させることに役立ち、さらに軌跡追跡コントローラのテスト正確性を向上させることに役立つ。
ステップ2では、現在の位置情報及び軌跡点情報に基づいて、テスト基準軌跡における現在の位置情報との距離が最も近い軌跡点を決定する。
好ましくは、本開示は、第2の移動設備が走行していないテスト基準軌跡に位置する全ての軌跡点の位置情報(例えば、UTM座標系に基づくX座標及びY座標)を取得し、かつ取得された各位置情報及び第2の移動設備の現在の位置情報(例えば、UTM座標系のX座標及びY座標)に基づいて、現在第2の移動設備と各軌跡点との間の距離を計算し、そのうちから距離が最も近い軌跡点を選択してよい。走行していないテスト基準軌跡とは、第2の移動設備の走行前方に位置し、かつ第2の移動設備の走行を待つテスト基準軌跡を指す。いくつかの応用シーンにおいては、第2の移動設備は、テスト基準軌跡から逸脱して走行する現象が発生する可能性があり、テスト基準軌跡における逸脱された部分は、一般的に走行していないテスト基準軌跡に属さない。
ステップ3では、距離が最も近い軌跡点に基づいて、テスト基準軌跡からサブテスト基準軌跡を切り出す。
好ましくは、距離が最も近い軌跡点が決定された場合、本開示は、距離が最も近い軌跡点を根拠として、テスト基準軌跡からサブテスト基準軌跡を直接的に切り出してよい。本開示は、該距離が最も近い軌跡点を判定し、かつ判定結果に基づいて、距離が最も近い軌跡点を根拠として、テスト基準軌跡からサブテスト基準軌跡を切り出す必要があるか否かを決定してよい。例えば、該距離が最も近い軌跡点と現在の位置情報との間の距離が所定の距離の要件(例えば、k(kは非ゼロの正の整数であり、例えば、k=4又は4.5又は5メートルなどである)メートル未満であるか否か)を満たすか否かを判定する。判定結果が所定の距離の要件を満たす(例えば、kメートル未満である)場合、本開示は、距離が最も近い軌跡点を根拠として、テスト基準軌跡からサブテスト基準軌跡を切り出し、例えば、距離が最も近い軌跡点を1番目の軌跡点として、j(jは所定の定数値であり、例えば、jは30又は35又は40などより大きい)個の軌跡点を切り出す。判定結果が所定の距離の要件を満たさない(例えば、kメートル以上である)場合、本開示は、サブテスト基準軌跡の切り出し操作を実行せず、今回、テスト対象軌跡追跡コントローラに入力情報を提供しない。
本開示は、距離が最も近い軌跡点と現在の位置情報に対して所定の距離の要件を満たすか否かを判定することにより、第2の移動設備と距離が最も近い軌跡点との距離が遠い場合に、ステアリング角が大きすぎる(例えば、ハンドルが急激に転向するなど)ことの発生に起因する潜在的な安全上のリスクなどの現象を回避することに役立つ。
好ましくは、1つのテスト対象軌跡追跡コントローラに対して、テストの過程で、第2の移動設備が移動し続ける場合、毎回テスト基準軌跡から切り出されたサブテスト基準軌跡は、一般的に同じではない。いずれかの2つの異なるテスト対象軌跡追跡コントローラに対して、そのうちの1つのテスト過程で切り出された全てのサブテスト基準軌跡は、別のテスト過程で切り出された全てのサブテスト基準軌跡とは、一般的に同じではない。したがって、本開示におけるサブテスト基準軌跡をローカルテスト基準軌跡と称してもよい。
対応的に、いずれかの2つの異なるテスト対象軌跡追跡コントローラに対して、そのうちの1つのテスト対象軌跡追跡コントローラのテスト過程で使用されたテスト基準軌跡は、他の1つのテスト過程で使用されたテスト基準軌跡と一般的に同じであり、本開示に形成されたテスト基準軌跡は、複数のテスト対象軌跡追跡コントローラに面し、すなわち、複数のテスト対象軌跡追跡コントローラは、いずれも該テスト基準軌跡に基づいてテストを実現する。したがって、本開示に形成されたテスト基準軌跡は、グローバルテスト基準軌跡と称されてよく、異なる軌跡追跡コントローラのテストに適用され得る。
ステップ4では、サブテスト基準軌跡における軌跡点情報に基づいて、テスト対象軌跡追跡コントローラに入力情報を提供する。
好ましくは、本開示におけるサブテスト基準軌跡は、一般的に、複数の軌跡点を含む。本開示は、サブテスト基準軌跡から1つの軌跡点を選択し、かつ選択された軌跡点の軌跡点情報に基づいて、テスト対象軌跡追跡コントローラに入力情報を提供してよい。例えば、サブテスト基準軌跡の中間セグメント又は中後セグメントから1つの軌跡点を選択し(例えば、サブテスト基準軌跡の25番目又は30番目の軌跡点を選択し)、かつ該軌跡点情報に基づいて、テスト対象軌跡追跡コントローラに入力情報を提供する。本開示は、サブテスト基準軌跡から複数の軌跡点を選択し、かつ選択された複数の軌跡点の軌跡点情報に基づいて計算する(例えば、加重値に基づいて計算することなど)ことにより、計算の結果に基づいて、テスト対象軌跡追跡コントローラに入力情報を提供してもよい。例えば、サブテスト基準軌跡の中間セグメント又は中後セグメントから連続的な複数の軌跡点を選択し、かつ選択された複数の軌跡点にそれぞれ対応する加重値に基づいて、上記複数の軌跡点の軌跡点情報を計算することにより、計算の結果に基づいて、テスト対象軌跡追跡コントローラに入力情報を提供する。各軌跡点に対応する加重値は、異なってよく、同じであってもよい(すなわち、平均値計算を行う)。各軌跡点に対応する加重値が異なる場合、各軌跡点に対応する加重値の大きさは、各軌跡点と第2の移動設備との距離の大きさに応じて設定してよい。例えば、第2の移動設備に近い軌跡点に対応する加重値は、第2の移動設備から遠い軌跡点に対応する加重値より大きい。
好ましくは、本開示は、テスト対象軌跡追跡コントローラに入力情報を提供する場合、グローバルに基づく情報からローカルに基づく情報へのマッピング処理を行って、テスト対象軌跡追跡コントローラに必要なローカルに基づく情報を取得する必要がある。例えば、まず、グローバルテスト基準軌跡における軌跡点情報における位置情報と、速度の方向と、加速度の方向とを、それぞれ第2の移動設備座標系に基づく位置情報と、速度の方向と、加速度の方向とに変換する。次に、速度の大きさ、加速度の大きさ及び変換後の位置情報、速度の方向及び加速度の方向を入力情報として、第2の移動設備に設置されたテスト対象軌跡追跡コントローラに提供する。また、本開示はさらに、ヨー角及び軌跡点の曲率などの情報に対してもグローバルに基づく情報からローカルに基づく情報へのマッピング処理を行い、かつマッピング処理後のヨー角及び曲率などの情報も入力情報とし、第2の移動設備に設置されたテスト対象軌跡追跡コントローラに提供してもよい。
好ましくは、本開示は、下記式(4)を利用してグローバルテスト基準軌跡における軌跡点情報における速度の方向を第2の移動設備座標系に基づく速度の方向に変換してよい。
好ましくは、テスト対象追跡コントローラは、受信された軌跡点の速度の大きさ、加速度の大きさ及び変換後の位置情報、速度の方向及び加速度の方向を対象情報とし、第2の移動設備の現在の位置情報、現在速度及び現在加速度などの情報を組み合わせ、対応する自動走行制御命令を出力してよく、自動走行制御命令は、CANバスなどにより第2の移動設備の対応する部品に提供され得る。
好ましくは、第2の移動設備が車両である場合、本開示における自動走行制御命令は、ハンドル回転角制御量、スロットル制御量及びブレーキ制御量のうちの少なくとも1つを含むが、これらに限定されない。車両の対応する部品は、受信された自動走行制御命令に基づいて、対応する操作を実行するにより、車両の自動運転を実現する。第2の移動設備がロボットアーム又はロボットなどである場合、本開示における自動走行制御命令は、ロボット又はロボットアームの操舵制御量及び行動周波数制御量のうちの少なくとも1つを含むが、これらに限定されない。自動走行制御命令に具体的に含まれるコンテンツは、実際の必要に応じて設定され、本開示はこれを限定しない。
S130では、第2の移動設備が自動走行制御命令に基づいて走行する走行情報を取得する。
好ましい一例では、本開示における走行情報は、第2の移動設備の実際の移動軌跡、第2の移動設備の実際の速度の大きさ及び方向、実際の加速度の大きさ及び方向、実際の姿勢、並びに第2の移動設備の実際の移動軌跡曲率などのうちの少なくとも1つを含んでよい。
好ましくは、本開示は、第2の移動設備に設置された測位装置に基づいて、第2の移動設備の測位時間、位置情報及び姿勢(例えば、第2の移動設備の実際のヨー角)をリアルタイムに取得することにより、第2の移動設備の実際の移動軌跡及び実際の移動軌跡上の異なる位置での実際の姿勢を取得してよい。本開示は、第2の移動設備から第2の移動設備の速度時間(すなわち、速度タイムスタンプ)、速度の大きさ及び加速度(加速度の大きさ及び加速度の方向を含む)をリアルタイムに読み取ってよい。例えば、第2の移動設備のCANバスにより第2の移動設備の速度時間、速度の大きさ及び加速度をリアルタイムに読み取る。本開示は、上記S110に示される方法を利用して第2の移動設備の複数の実際の軌跡点情報を取得してよい。複数の実際の軌跡点情報は、第2の移動設備の実際の移動軌跡を形成する。隣接する2つの実際の軌跡点の間の距離は、テスト基準軌跡における隣接する2つの軌跡点の間の距離と同じであってよい。実際の軌跡点情報を取得する具体的な過程について、ここで繰り返し説明しない。
好ましくは、本開示は、第2の移動設備の実際の移動軌跡における実際の軌跡点情報とテスト基準軌跡における軌跡点情報を比較し、比較により形成された差異を取得し、かつ出力してよく、該差異は軌跡追跡コントローラの性能を反映することができる。本開示は、可視化の方式を利用して比較により形成された差異を表示してよい。例えば、第2の移動設備の走行過程で、オンライン可視化表示を行ってよい。さらに例えば、第2の移動設備の走行が完了した後、オフライン可視化表示を行うか又は性能分析レポートを形成してよい。
好ましくは、本開示は、第2の移動設備の走行過程で、グローバルテスト基準軌跡、第2の移動設備の現在位置及び第2の移動設備の履歴実際の移動軌跡をリアルタイムに表示してよく、例えば、図5には、8字状ルートはグローバルテスト基準軌跡であり、長方形は第2の移動設備を示す。長方形が位置する位置は、第2の移動設備の現在位置である。第2の移動設備は、図5の右下方から走行を開始し、その履歴実際の移動軌跡の一部の軌跡は、テスト基準軌跡と完全に合致しない。第2の移動設備が現在取得したサブテスト基準軌跡は、図5における白色曲線部分である。第2の移動設備の移動に連れて、本開示は、8字状ルートから第2の移動設備が軌跡に沿って移動する必要があるサブテスト基準軌跡をリアルタイムに切り出して、現在表示されたサブテスト基準軌跡を置き換えてよい。第2の移動設備が軌跡に沿って移動する必要があるサブテスト基準軌跡を切り出す場合、第2の移動設備の現在位置に応じて切り出してよい。上記説明から分かるように、本開示は、第2の移動設備が軌跡に沿って移動する状況を直感的で、明確に示すことができる。
好ましい一例では、本開示の比較により形成された差異を可視化して表示する一例は、図6に示される。図6の左上図には2本の曲線があり、そのうちの1本の曲線は、複数の軌跡点位置情報がUTM座標系において形成したテスト基準軌跡を示し、他の1本の曲線は、第2の移動設備がテスト基準軌跡に沿って移動して形成した実際の軌跡点位置情報がUTM座標系において形成した実際の軌跡点を示す。2本の軌跡が完全に重なるため、図6の左上図に1本の曲線のみが表示される。左上図における横座標は、UTM座標系のX軸(単位はメートルである)を示し、縦座標は、UTM座標系のY軸(単位はメートルである)を示す。図6の右上図には2本の曲線があり、そのうちの1本の曲線は、テスト基準軌跡における複数の軌跡点にそれぞれ対応する速度の大きさにより形成されたものであり、他の1本の曲線は、第2の移動設備の実際の軌跡における複数の実際の軌跡点にそれぞれ対応する速度の大きさにより形成されたものである。右上図の横座標は、開始軌跡点に対する距離(単位はメートルである)を示し、縦座標は、速度の大きさ(単位はメートル/秒である)を示す。図6の左下図には2本の曲線があり、そのうちの1本の曲線は、テスト基準軌跡における複数の軌跡点の速度の方向により形成されたものであり、他の1本の曲線は、第2の移動設備の実際の軌跡における複数の実際の軌跡点にそれぞれ対応する速度の方向により形成されたものである。図6の左下図の横座標は、開始軌跡点に対する距離(単位はメートルである)を示し、縦座標は、速度の方向(例えば、上記θ)を示す。図6の右下図には2本の曲線が含まれ、そのうちの1本の曲線は、テスト基準軌跡における複数の軌跡点にそれぞれ対応する曲率により形成されたものであり、他の1本の曲線は、第2の移動設備の実際の軌跡における複数の実際の軌跡点にそれぞれ対応する曲率により形成されたものである。右下図の横座標は、開始軌跡点に対する距離(単位はメートルである)を示し、縦座標は、曲率を示す。軌跡追跡コントローラは第2の移動設備にスロットル、ブレーキ、ハンドル回転角などの制御命令を送信して第2の移動設備がテスト基準軌跡に応じて走行するように制御し、走行過程の速度の大きさ、速度の方向、曲率などの情報とテスト基準軌跡形成の根拠となる第1の移動設備の対応する軌跡点情報に含まれる速度の大きさ、速度の方向、曲率などの情報との間の差異は、図から分かるように、軌跡追跡コントローラの制御と第1の移動設備の運転者による制御又は他のコントローラによる制御との間の差異又は近接程度を直感的に体現することができ、さらに軌跡追跡コントローラの性能を直感的に表示するか又はテストし評価することができる。
好ましくは、本開示が比較により形成された差異を可視化して表示する別の一例は、図7に示される。
図7における上図、中図、下図の3つの図の横座標は、いずれも時間(単位は秒である)である。図7の上図における曲線は、時間の変化に伴い、第2の移動設備のヨー角の誤差、すなわち、テスト基準軌跡における軌跡点のヨー角と実際の軌跡における対応する軌跡点のヨー角との差値を示す。図7の上図の縦座標の単位はメートルである。図7の中図における曲線は、時間の変化に伴い、第2の移動設備の速度の方向の誤差、すなわち、テスト基準軌跡における軌跡点の速度の方向と実際の軌跡における対応する軌跡点の速度の方向との差値を示す。図7の中図の縦座標は角度(単位は度である)である。図7の下図における曲線は、時間の変化に伴い、第2の移動設備の速度の大きさの誤差、すなわち、テスト基準軌跡における軌跡点の速度の大きさと実際の軌跡における対応する軌跡点の速度の大きさとの差値を示す。図7の下図の縦座標の単位は速度(単位はメートル/秒である)である。軌跡追跡コントローラは、第2の移動設備にスロットル、ブレーキ又はハンドル回転角などの制御命令を送信して第2の移動設備がテスト基準軌跡に応じて走行するように制御し、走行過程のヨー角、速度の大きさ、速度の方向などの情報とテスト基準軌跡形成の根拠となる第1の移動設備の対応する軌跡点情報に含まれるヨー角、速度の大きさ、速度の方向などの情報との間の差異は、図から分かるように、軌跡追跡コントローラの制御と第1の移動設備の運転者による制御又は他のコントローラによる制御との間の差異又は近接程度を直感的に体現することができ、さらに軌跡追跡コントローラの性能を直感的に表示するか又はテストし評価することができる。
図8は本開示の軌跡追跡コントローラのテスト装置の1つの実施例の概略構成図である。図8に示す装置は、第1の取得モジュール800、第1の生成モジュール810、入力提供モジュール820及び第2の取得モジュール830を含む。好ましくは、軌跡追跡コントローラのテスト装置はさらに、差異形成モジュール840、表示モジュール850及びパラメータ調整モジュール860のうちの少なくとも1つを含んでもよい。以下、各モジュールについてそれぞれ詳細に説明する。
第1の取得モジュール800は、第1の移動設備がテスト対象軌跡追跡コントローラに制御されていない走行状態にある場合、第1の移動設備の複数の測位情報及び複数の運動状態情報を取得する。第1の移動設備は、車両、ロボット又はロボットアームであってよい。
好ましくは、第1の取得モジュール800は、第1のサブモジュール及び第2のサブモジュールを含んでよい。第1の取得モジュール800は、さらに第3のサブモジュール及び第4のサブモジュールのうちの少なくとも1つを含んでもよい。第1のサブモジュールは、リアルタイムキネマティックキャリア位相差分信号及び衛星測位信号を取得する。第2のサブモジュールは、リアルタイムキネマティックキャリア位相差分信号及び衛星測位信号に基づいて、第1の移動設備の位置情報を決定する。第1の移動設備の位置情報の測位精度は、衛星測位信号の位置測位精度より高い。例えば、第2のサブモジュールは、同じ測位時間を有する衛星測位信号及びリアルタイムキネマティックキャリア位相差分信号に基づいて、第1の移動設備の位置情報を取得してよい。さらに例えば、第2のサブモジュールは、時間間隔が所定の時間間隔より小さいという要件の衛星測位信号及びリアルタイムキネマティックキャリア位相差分信号に基づいて、第1の移動設備の位置情報を取得する。測位情報は、UTM座標系に基づくX軸座標及びY軸座標を含む。運動状態情報は、ヨー角、速度及び加速度のうちの少なくとも1つを含む。第3のサブモジュールは、第1の移動設備のCANバスから読み取れたデータに基づいて、第1の移動設備の速度の大きさ及び加速度の大きさを取得する。第4のサブモジュールは、第1の移動設備に設置された慣性測定ユニットから出力されたデータに基づいて、第1の移動設備のヨー角を取得する。軌跡点情報は、軌跡点位置情報、軌跡点に対応する速度の大きさ及び速度の方向、軌跡点に対応する加速度の大きさ及び加速度の方向、軌跡点に対応する軌跡曲率、並びに軌跡点に対応するヨー角のうちの少なくとも1つを含む。
第1の取得モジュール800が具体的に実行する操作及び第1の取得モジュール800に含まれる各サブモジュールが具体的に実行する操作について、上記方法の実施形態におけるS100に対する関連説明を参照し、ここでは詳細な説明を省略する。
第1の生成モジュール810は、測位情報及び運動状態情報に基づいて、複数の軌跡点情報を含むテスト基準軌跡を生成する。
好ましくは、第1の生成モジュール810は、第1のサンプリングサブモジュール及び第2のサンプリングサブモジュールを含んでよい。第1の生成モジュール810はさらに、方向決定サブモジュール及び曲率決定サブモジュールのうちの少なくとも1つを含んでもよい。第1のサンプリングサブモジュールは、隣接する軌跡点間の所定の距離に基づいて、複数の測位情報をサンプリングし、複数の軌跡点位置情報を取得する。第2のサンプリングサブモジュールは、複数の軌跡点位置情報にそれぞれ対応する測位時間に基づいて、複数の運動状態情報をサンプリングし、複数の軌跡点にそれぞれ対応する運動状態情報を取得する。方向決定サブモジュールは、いずれかの軌跡点に対して、軌跡点の前後の軌跡点の接続線の勾配に基づいて、軌跡点に対応する速度の方向及び加速度の方向を決定する。曲率決定サブモジュールは、隣接する軌跡点の速度の方向の変化量及び隣接する軌跡点間の距離に基づいて、隣接する軌跡点のうちの1つの軌跡点に対応する軌跡曲率を決定する。
第1の生成モジュール810が具体的に実行する操作及び第1の生成モジュール810に含まれる各サブモジュールが具体的に実行する操作について、上記方法の実施形態におけるS110に対する関連説明を参照し、ここでは詳細な説明を省略する。
入力提供モジュール820は、テスト基準軌跡の少なくとも一部の軌跡点情報に基づいて、テスト対象軌跡追跡コントローラに入力情報を提供して、テスト対象軌跡追跡コントローラがそれに制御接続された第2の移動設備に対応する自動走行制御命令を出力する。第2の移動設備は、第1の移動設備と同一の移動設備であってよく、2つの異なる移動設備であってもよい。
好ましくは、入力提供モジュール820は、第5のサブモジュール、第6のサブモジュール、第7のサブモジュール及び第8のサブモジュールを含んでよい。第5のサブモジュールは、テスト対象軌跡追跡コントローラが位置する第2の移動設備の現在の位置情報を取得する。第6のサブモジュールは、現在の位置情報及び軌跡点情報に基づいて、テスト基準軌跡における現在の位置情報との距離が最も近い軌跡点を決定する。第7のサブモジュールは、距離が最も近い軌跡点に基づいて、テスト基準軌跡からサブテスト基準軌跡を切り出す。例えば、距離が最も近い軌跡点が決定された場合、第7のサブモジュールは、距離が最も近い軌跡点を根拠として、テスト基準軌跡からサブテスト基準軌跡を直接的に切り出してよい。第7のサブモジュールは、該距離が最も近い軌跡点を判定し、かつ判定結果に基づいて、距離が最も近い軌跡点を根拠として、テスト基準軌跡からサブテスト基準軌跡を切り出す必要があるか否かを決定してもよい。例えば、第7のサブモジュールは、該距離が最も近い軌跡点と現在の位置情報との間の距離が所定の距離の要件を満たすか否かを判定する。判定結果が所定の距離の要件を満たす場合、第7のサブモジュールは、距離が最も近い軌跡点を根拠として、テスト基準軌跡からサブテスト基準軌跡を切り出す。判定結果が所定の距離の要件を満たさない場合、第7のサブモジュールはサブテスト基準軌跡の切り出し操作を実行せず、今回、第8のサブモジュールはテスト対象軌跡追跡コントローラに入力情報を提供しない。第8のサブモジュールは、サブテスト基準軌跡のうちの軌跡点情報に基づいて、テスト対象軌跡追跡コントローラに入力情報を提供する。例えば、第8のサブモジュールは、サブテスト基準軌跡から1つの軌跡点を選択し、選択された軌跡点の軌跡点情報に基づいて、テスト対象軌跡追跡コントローラの入力情報を決定する。さらに例えば、第8のサブモジュールは、サブテスト基準軌跡から複数の軌跡点を選択し、選択された複数の軌跡点の軌跡点情報を総合処理し、かつ総合処理結果に基づいて、テスト対象軌跡追跡コントローラの入力情報を決定する。好ましくは、第8のサブモジュールは、軌跡点情報における位置情報と、速度の方向と加速度の方向とを、第2の移動設備座標系における位置情報と、速度の方向と加速度の方向とにそれぞれ変換してよい。第8のサブモジュールは、速度の大きさ、加速度の大きさ及び変換後の位置情報、速度の方向及び加速度の方向をテスト対象軌跡追跡コントローラに提供してもよい。
入力提供モジュール820が具体的に実行する操作及び入力提供モジュール820に含まれる各サブモジュールが具体的に実行する操作について、上記方法の実施形態におけるS120に対する関連説明を参照し、ここでは詳細な説明を省略する。
第2の取得モジュール830は、第2の移動設備が自動走行制御命令に基づいて走行する走行情報を取得する。
好ましくは、第2の取得モジュール830は、第2の移動設備が上記自動走行制御命令に基づいて走行する過程で、第2の移動設備の複数の測位情報及び複数の運動状態情報を取得し、その後、第2の移動設備の複数の測位情報及び運動状態情報に基づいて、複数の実際の軌跡点情報を含む実際の軌跡を生成してよい。第2の取得モジュール830が具体的に実行する操作について、上記方法の実施形態におけるS130に対する関連説明を参照し、ここでは詳細な説明を省略する。
差異形成モジュール840は、実際の軌跡と上記テスト基準軌跡との間の差異を取得し及び/又は出力する。例えば、実際の軌跡における軌跡点とテスト基準軌跡における軌跡点との位置誤差、ヨー角誤差及び速度の大きさの誤差などを取得し、かつ出力する。
表示モジュール850は、実際の軌跡と前記テスト基準軌跡との間の差異を可視化して表示する。例えば、表示モジュール850は、第2の移動設備の走行過程で、オンライン可視化表示を行ってよい。さらに例えば、表示モジュール850は、第2の移動設備の走行が完了した後、オフライン可視化表示を行うことができる。具体的には、上記方法の実施形態における図5~図7に対する連説明を参照し、ここでは詳細な説明を省略する。
パラメータ調整モジュール860は、実際の軌跡とテスト基準軌跡との間の差異に基づいて、軌跡追跡コントローラのパラメータを調整する。パラメータ調整モジュール860は、テスト対象軌跡追跡コントローラのパラメータを意図的に調整することにより、軌跡追跡コントローラの性能を向上させることに役立つことができる。
例示的な機器
図9は、本開示を実現するための例示的な設備900を示し、設備900は、自動車に配置された制御システム/電子システム、移動端末(例えば、スマートフォンなど)、パーソナルコンピュータ(PC、例えば、デスクトップコンピュータ又はノートパソコン)、タブレット及びサーバなどであってよい。図9には、設備900は、1つ以上のプロセッサ、通信部などを含み、上記1つ以上のプロセッサは、1つ以上の中央処理装置(CPU)901、及び/又は、1つ以上の加速ユニット(例えば、GPU、画像処理プロセッサ)913などであってよく、プロセッサは、読み出し専用メモリ(ROM)902に記憶された実行可能な命令又は記憶部分908からランダムアクセスメモリ(RAM)903にロードされた実行可能な命令に基づいて様々な適切な動作及び処理を実行することができる。通信部912は、IB(Infiniband)を含むがこれに限定されていないネットワークカードを含むが、これに限定されない。プロセッサは、実行可能な命令を実行するように読み出し専用メモリ902及び/又はランダムアクセスメモリ903と通信し、バス904により通信部912に接続され、かつ通信部912により他の対象設備と通信して、本開示の対応するステップを完了させる。
上記各命令により実行される動作については、上記方法の実施例における関連説明を参照することができるため、ここで詳細に説明しない。また、RAM903には、装置の操作に必要な様々なプログラム及びデータがさらに記憶されてもよい。CPU901、ROM902及びRAM903は、バス904により互いに接続される。
RAM903がある場合、ROM902は選択的なモジュールである。RAM903は、実行可能な命令を記憶するか、又は実行中にROM902に実行可能な命令を書き込み、実行可能な命令により中央処理装置901が上記方法に含まれるステップを実行する入出力(I/O)インタフェース905もバス904に接続される。通信部912は、集積設置されてよく、複数のサブモジュール(例えば、複数のIBネットカード)を有し、かつそれぞれバスに接続するように設置されてもよい。
キーボード、マウスなどを含む入力部分906と、ブラウン管(CRT)、液晶表示装置(LCD)など及びスピーカなどを含む出力部分907と、ハードディスクなどを含む記憶部分908と、LANカード、変調復調器などのネットワークインタフェースカードを含む通信部分909とは、I/Oインタフェース905に接続される。通信部分909は、インターネットなどのネットワークにより通信処理を行う。ドライバ910も必要に応じてI/Oインタフェース905に接続される。磁気ディスク、光ディスク、光磁気ディスク、半導体メモリなどのリムーバブル媒体911を必要に応じてドライバ910にインストールすることにより、それから読み出されたコンピュータプログラムを必要に応じて記憶部分908にインストールする。
特に説明すべきものとして、図9に示すようなアーキテクチャは、1つの好ましい実現方式にすぎず、具体的な実施過程で、実際の必要に応じて上記図9の部品の数及びタイプを選択し、削除し、追加するか又は置換することができ、異なる機能部品の設置について、分離設置又は集積設置などの実現方式を用いてもよく、例えば、加速ユニット913とCPU901とを分離設置してよく、さらに例えば、加速ユニット913をCPU901に集積してもよく、通信部を分離設置してもよく、CPU901又は加速ユニット913などに集積して設置してもよい。これらの代替的な実施形態は、いずれも本開示の保護範囲に属する。
特に、本開示の実施形態によれば、以下にフローチャートを参照して説明されるプロセスは、コンピュータソフトウェアプログラムとして実現されてよく、例えば、本開示の実施形態は、機械可読媒体に有形に含まれるコンピュータプログラムを含むコンピュータプログラム製品を含み、コンピュータプログラムは、フローチャートに示されるステップを実行するプログラムコードを含み、プログラムコードは、本開示に係る方法におけるステップを対応して実行する対応命令を含んでよい。
このような実施形態では、該コンピュータプログラムは、通信部分909によりネットワークからダウンロードされインストールされ、及び/又はリムーバブル媒体911からインストールされてよい。該コンピュータプログラムが中央処理装置(CPU)901により実行されると、本開示に記載の、上記対応するステップを実現する命令を実行する。
1つ以上の好ましい実施形態では、本開示の実施例は、実行されると、上記任意の実施例に記載の軌跡追跡コントローラのテスト方法をコンピュータに実行させるコンピュータ可読命令を記憶するコンピュータプログラム製品をさらに提供する。
該コンピュータプログラム製品は、具体的には、ハードウェア、ソフトウェア又はそれらの組み合わせにより実現されてよい。好ましい例において、上記コンピュータプログラム製品は、具体的には、コンピュータ記憶媒体として具現化され、別の好ましい例において、上記コンピュータプログラム製品は、具体的には、例えばソフトウェア開発キット(Software Development Kit、SDK)などのソフトウェア製品として具現化される。
1つ以上の好ましい実施形態では、本開示の実施例は、別の軌跡追跡コントローラのテスト方法及び対応する装置、電子機器、コンピュータ記憶媒体、コンピュータプログラム並びにコンピュータプログラム製品をさらに提供し、方法は、第1の装置が、第2の装置に上記いずれかの可能な実施例における軌道追跡コントローラのテスト方法を実行させる、軌道追跡コントローラのテスト命令を、第2の装置に送信するステップと、第1の装置が第2の装置から送信された軌道追跡コントローラのテスト結果を受信するステップと、を含む。
いくつかの実施例において、該軌跡追跡コントローラのテスト指示は、具体的には呼び出し命令であってよく、第1の装置は、呼び出し方式で、軌跡追跡コントローラのテスト操作を実行するように第2の装置に指示することができ、それに応じて、呼び出し命令を受信したことに応答して、第2の装置は、上記軌跡追跡コントローラのテスト方法の任意の実施例におけるステップ及び/又はフローを実行することができる。
本開示の実施例における「第1」、「第2」などの用語は、区別するためのものに過ぎず、本開示の実施例を限定するものと理解すべきではないことを理解されたい。さらに、本開示では、「複数」は、2つ又は2つ以上を指してよく、「少なくとも1つ」は、1つ、2つ又は2つ以上を指してよいことを理解されたい。さらに、本開示で言及された任意の部品、データ又は構造は、明確に限定されるか又は明細書の前後で反対的に示唆された場合でなければ、一般的には1つ又は複数と理解してよいことを理解されたい。さらに、本開示における各実施例についての説明は各実施例の間の相違点を重点として強調し、その同一又は類似する点については互いに参照してよく、簡潔にするために、ここで一つずつ繰り返して説明しないことを理解されたい。
本開示の方法、装置、電子機器及びコンピュータ可読記憶媒体は、様々な形態で実現されてよい。例えば、ソフトウェア、ハードウェア、ファームウェア、又はソフトウェア、ハードウェア、ファームウェアの任意の組み合わせによって本開示の方法、装置、電子機器及びコンピュータ可読記憶媒体を実現することができる。方法のステップのための上記順序は、説明するためのものに過ぎず、本開示の方法のステップは、他の方式で特に説明しない限り、以上で具体的に説明された順序に限定されない。また、いくつかの実施形態において、さらに本開示は、記録媒体に記憶されたプログラムとして実施することができ、これらのプログラムは本開示に係る方法を実現するための機械可読命令を含む。したがって、本開示はさらに本開示の方法に係るプログラムを実行するための記録媒体をカバー記憶する。
本開示の説明は、例示及び説明のために提示されたものであり、網羅的なものであり、もしくは開示された形式に本開示を限定するというわけでない。多くの修正及び変形は、当業者にとって明らかである。実施形態は、本開示の原理及び実際の適用をよりよく説明し、かつ当業者が本開示の実施例を理解して特定用途に適した様々な修正を加えた様々な実施形態を設計可能にするように選択され説明されたものである。