(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024173583
(43)【公開日】2024-12-12
(54)【発明の名称】制御装置
(51)【国際特許分類】
G05D 1/249 20240101AFI20241205BHJP
G08G 1/09 20060101ALI20241205BHJP
G16Y 10/40 20200101ALI20241205BHJP
G16Y 20/20 20200101ALI20241205BHJP
G16Y 40/30 20200101ALI20241205BHJP
【FI】
G05D1/249
G08G1/09 V
G16Y10/40
G16Y20/20
G16Y40/30
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2023181749
(22)【出願日】2023-10-23
(31)【優先権主張番号】P 2023089448
(32)【優先日】2023-05-31
(33)【優先権主張国・地域又は機関】JP
(71)【出願人】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】110000028
【氏名又は名称】弁理士法人明成国際特許事務所
(72)【発明者】
【氏名】池田 圭吾
(72)【発明者】
【氏名】齋藤 恭裕
(72)【発明者】
【氏名】横山 大樹
【テーマコード(参考)】
5H181
5H301
【Fターム(参考)】
5H181AA01
5H181AA05
5H181AA06
5H181AA07
5H181AA20
5H181AA26
5H181BB20
5H181CC03
5H181CC04
5H181CC11
5H181CC12
5H181CC14
5H181CC27
5H181FF04
5H181FF13
5H181FF27
5H181FF32
5H181JJ28
5H181LL09
5H181MB04
5H181MC02
5H181MC19
5H181MC27
5H301BB05
5H301CC03
5H301CC06
5H301GG08
5H301GG09
(57)【要約】
【課題】移動体の位置や向きの推定精度を高める技術を提供する。
【解決手段】本開示の制御装置は、複数の測距装置の測定結果を用いて、移動体を制御するための制御指令を生成する。制御装置は、複数の測距装置のうちの2つ以上の測距装置で得られた2つ以上の3次元点群データを結合して結合点群データを作成する点群結合部と、結合点群データを用いて移動体の位置及び向きの少なくとも一方を推定する推定処理を実行する推定部と、を備える。
【選択図】
図2
【特許請求の範囲】
【請求項1】
複数の測距装置の測定結果を用いて、移動体を制御するための制御指令を生成する制御装置であって、
前記複数の測距装置のうちの2つ以上の測距装置で得られた2つ以上の3次元点群データを結合して結合点群データを作成する点群結合部と、
前記結合点群データを用いて前記移動体の位置及び向きの少なくとも一方を推定する推定処理を実行する推定部と、
を備える制御装置。
【請求項2】
請求項1に記載の制御装置であって、
前記推定部は、前記推定処理の許容処理時間が時間基準値以上である場合に、前記結合点群データを用いた前記推定処理を実行する、制御装置。
【請求項3】
請求項2に記載の制御装置であって、
前記推定部は、前記許容処理時間が前記時間基準値未満である場合に、単一の前記3次元点群データを用いて前記推定処理を実行する、制御装置。
【請求項4】
請求項1に記載の制御装置であって、
前記推定部は、前記制御の要求精度が精度基準値以上である場合に、前記結合点群データを用いた前記推定処理を実行する、制御装置。
【請求項5】
請求項1に記載の制御装置であって、
前記推定部は、前記移動体の走行状況に応じて、前記結合点群データを用いた前記推定処理と、単一の前記3次元点群データを用いた前記推定処理と、のいずれかを選択して実行する、制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、移動体の制御装置に関する。
【背景技術】
【0002】
車両の製造工程において、車両を自走搬送させる技術が知られている(例えば、特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
車両などの移動体を自走搬送により移動させる際に、移動体の位置や向きを推定する処理が実行される。移動体の位置や向きは、カメラやレーダーなどの測距装置を用いて取得した3次元点群データを用いて推定できる。この推定処理は、移動体の走行制御の安定化の為に、早い周期での算出が必要になる。しかしながら、従来技術では、移動体の位置や向きの推定精度を高めることに関して十分に工夫されていなかった。また、移動体の位置や向きの推定精度と処理速度はトレードオフの関係にあるので、状況に応じて推定精度と処理速度のいずれかを優先することが望まれる。
【課題を解決するための手段】
【0005】
本開示は、以下の形態として実現することが可能である。
【0006】
(1)本開示の一形態によれば、複数の測距装置の測定結果を用いて、移動体を制御するための制御指令を生成する制御装置が提供される。この制御装置は、前記複数の測距装置のうちの2つ以上の測距装置で得られた2つ以上の3次元点群データを結合して結合点群データを作成する点群結合部と、前記結合点群データを用いて前記移動体の位置及び向きの少なくとも一方を推定する推定処理を実行する推定部と、を備える。
この制御装置によれば、2つ以上の3次元点群データを結合した結合点群データを用いるので、移動体の位置や向きの推定精度を高めることができる。
(2)上記制御装置において、前記推定部は、前記推定処理の許容処理時間が時間基準値以上である場合に、前記結合点群データを用いた前記推定処理を実行するものとしてもよい。
この制御装置によれば、推定処理の許容処理時間が長い場合に、結合点群データを用いて推定精度を高めることができる。
(3)上記制御装置において、前記推定部は、前記許容処理時間が前記時間基準値未満である場合に、単一の前記3次元点群データを用いて前記推定処理を実行するものとしてもよい。
この制御装置によれば、推定処理の許容処理時間が短い場合に、単一の3次元点群データを用いて処理速度を高めることができる。
(4)上記制御装置において、前記推定部は、前記制御の要求精度が精度基準値以上である場合に、前記結合点群データを用いた前記推定処理を実行するものとしてもよい。
この制御装置によれば、制御の要求精度が高い場合に、結合点群データを用いて推定精度を高めることができる。
(5)上記制御装置において、前記推定部は、前記移動体の走行状況に応じて、前記結合点群データを用いた前記推定処理と、単一の前記3次元点群データを用いた前記推定処理と、のいずれかを選択して実行するものとしてもよい。
この制御装置によれば、移動体の走行状況に応じて推定精度と処理速度のいずれかを優先させることができる。
【図面の簡単な説明】
【0007】
【
図1】実施形態における遠隔制御システムの構成を示す概念図。
【
図2】第1実施形態における車両と遠隔制御装置の構成を示すブロック図。
【
図3】第1実施形態における遠隔制御の処理手順を示すフローチャート。
【
図4】使用する3次元点群データの数を変更する例を示す説明図。
【
図5】第2実施形態における車両と遠隔制御装置の構成を示すブロック図。
【
図6】第2実施形態における車両制御の処理手順を示すフローチャート。
【発明を実施するための形態】
【0008】
A.第1実施形態
図1は、実施形態における遠隔制御システム10の構成を示す概念図である。遠隔制御システム10は、移動体としての1台以上の車両100と、車両100を遠隔制御するための制御指令を生成して車両100に送信する遠隔制御装置200と、車両100の3次元点群データを測定する複数の測距装置300と、車両100の製造工程の管理を行う工程管理装置400と、を備える。第1実施形態では、遠隔制御装置200が本開示の「制御装置」に相当する。
【0009】
車両100は、電気自動車(BEV:Battery Electric Vehicle)であることが好ましい。なお、移動体は、電気自動車に限られず、例えば、ガソリン自動車や、ハイブリッド自動車や、燃料電池自動車でもよい。移動体は、車両100に限られず、例えば、電動垂直離着陸機(いわゆる空飛ぶ自動車)でもよい。
【0010】
本開示において、「移動体」は、移動し得る物体を意味する。車両は、車輪によって走行する車両であっても無限軌道によって走行する車両であってもよく、例えば、乗用車、トラック、バス、二輪車、四輪車、戦車、工事用車両などである。移動体が車両以外である場合には、本開示における「車両」「車」との表現を、適宜に「移動体」に置き換えることができ、「走行」との表現を、適宜に「移動」に置き換えることができる。
【0011】
車両100は、無人運転により走行可能に構成されている。「無人運転」とは、搭乗者の走行操作によらない運転を意味する。走行操作とは、車両100の「走る」、「曲がる」、「止まる」の少なくともいずれかに関する操作を意味する。無人運転は、車両100の外部に位置する装置を用いた自動または手動の遠隔制御によって、あるいは、車両100の自律制御によって実現される。無人運転によって走行している車両100には、走行操作を行わない搭乗者が搭乗していてもよい。走行操作を行わない搭乗者には、例えば、単に車両100の座席に着座している人や、組み付け、検査、スイッチ類の操作といった走行操作とは異なる作業を車両100に乗りながら行っている人が含まれる。なお、搭乗者の走行操作による運転は、「有人運転」と呼ばれることがある。
【0012】
本明細書において、「遠隔制御」は、車両100の外部から車両100の動作の全てが完全に決定される「完全遠隔制御」と、車両100の外部から車両100の動作の一部が決定される「部分遠隔制御」とを含む。また、「自律制御」は、車両100の外部の装置から一切の情報を受信することなく車両100が自身の動作を自律的に制御する「完全自律制御」と、車両100の外部の装置から受信した情報を用いて車両100が自身の動作を自律的に制御する「部分自律制御」とを含む。
【0013】
本実施形態では、車両100を製造する工場において、車両100の遠隔制御が実行される。工場は、第1場所PL1と第2場所PL2とを備えている。第1場所PL1は、例えば、車両100の組み立てが実施される場所であり、第2場所PL2は、例えば、車両100の検査が実施される場所である。第1場所PL1と第2場所PL2とは、車両100が走行可能な走行路SRによって接続されている。工場内の任意の位置は、基準座標系Σrのxyz座標値で表現される。
【0014】
走行路SRの周辺には、車両100を測定対象とする複数の測距装置300が設置されている。遠隔制御装置200は、各測距装置300で測定された3次元点群データを用いて、リアルタイムで、目標ルートTRに対する車両100の相対的な位置および向きを取得することができる。測距装置300としては、カメラやLiDAR(Light Detection And Ranging)を使用できる。特に、LiDARは、高精度の3次元点群データが得られる点で好ましい。複数の測距装置300は、車両100が目標ルートTRの任意の位置に存在する場合に、常に2個以上の測距装置300で車両100を測定できるように配置されていることが好ましい。個々の測距装置300の位置は固定されており、基準座標系Σrと個々の測距装置300の装置座標系との相対関係は既知である。基準座標系Σrの座標値と個々の測距装置300の装置座標系の座標値とを相互に変換するための座標変換行列は、遠隔制御装置200内に予め格納されている。
【0015】
遠隔制御装置200は、車両100を目標ルートTRに沿って走行させるための制御指令を生成し、制御指令を車両100に送信する。車両100は、受信した制御指令に従って走行する。したがって、遠隔制御システム10により、クレーンやコンベアなどの搬送装置を用いずに、車両100を第1場所PL1から第2場所PL2まで遠隔制御により移動させることができる。
【0016】
図2は、車両100と遠隔制御装置200の構成を示すブロック図である。車両100は、車両100の各部を制御するための車両制御装置110と、車両制御装置110の制御下で駆動するアクチュエータ群120と、無線通信により遠隔制御装置200と通信するための通信装置130と、車両100の位置情報を取得するためのGPS受信機140とを備えている。本実施形態では、アクチュエータ群120には、車両100を加速させるための駆動装置のアクチュエータ、車両100の進行方向を変更するための操舵装置のアクチュエータ、および、車両100を減速させるための制動装置のアクチュエータが含まれている。駆動装置には、バッテリ、バッテリの電力により駆動する走行用モータ、および、走行用モータにより回転する駆動輪が含まれている。駆動装置のアクチュエータには、走行用モータが含まれている。なお、アクチュエータ群120には、さらに、車両100のワイパーを揺動させるためのアクチュエータや、車両100のパワーウィンドウを開閉させるためのアクチュエータなどが含まれてもよい。
【0017】
車両制御装置110は、プロセッサ111と、メモリ112と、入出力インタフェース113と、内部バス114とを備えるコンピュータにより構成されている。プロセッサ111、メモリ112、および、入出力インタフェース113は、内部バス114を介して、双方向に通信可能に接続されている。入出力インタフェース113には、アクチュエータ群120、通信装置130、および、GPS受信機140が接続されている。
【0018】
本実施形態では、プロセッサ111は、メモリ112に予め記憶されているプログラムPG1を実行することにより、車両制御部115及び位置情報取得部116として機能する。車両制御部115は、アクチュエータ群120を制御する。車両制御部115は、車両100に運転者が搭乗している場合に、運転者の操作に応じてアクチュエータ群120を制御することにより、車両100を走行させることができる。車両制御部115は、車両100に運転者が搭乗しているか否かにかかわらず、遠隔制御装置200から送信される制御指令に応じてアクチュエータ群120を制御することにより、車両100を走行させることもできる。位置情報取得部116は、GPS受信機140を用いて、車両100の現在地を示す位置情報を取得する。但し、位置情報取得部116とGPS受信機140は省略可能である。
【0019】
遠隔制御装置200は、プロセッサ201と、メモリ202と、入出力インタフェース203と、内部バス204とを備えるコンピュータにより構成されている。プロセッサ201、メモリ202、および、入出力インタフェース203は、内部バス204を介して、双方向に通信可能に接続されている。入出力インタフェース203には、無線通信により車両100,測距装置300,及び,工程管理装置400と通信するための通信装置205が接続されている。
【0020】
本実施形態では、プロセッサ201は、メモリ202に予め記憶されているプログラムPG2を実行することにより、3次元点群データ取得部210,点群結合部220,推定部230,及び,遠隔制御指令生成部240として機能する。
【0021】
3次元点群データ取得部210は、測距装置300で測定された3次元点群データを取得する。3次元点群データは、測距装置300で検出された点群の3次元位置を示すデータである。
【0022】
点群結合部220は、遠隔制御システム10に含まれる複数の測距装置300のうちの2つ以上の測距装置300を選択し、2つ以上の測距装置300から得られる2つ以上の3次元点群データを結合して結合点群データを作成する。複数の3次元点群データの結合方法としては、例えば以下のいずれかの方法を採用することができる。
【0023】
<点群の結合方法M1>
各測距装置300で得られた3次元点群データの各点の座標値を、測距装置300の装置座標系から、基準座標系Σrなどの特定の座標系に変換して、それらの和を取る。
この際、変換後の座標値の差が許容誤差以下である複数の点が存在する場合には、それらの複数の点を1つの代表点に置き換える。代表点の座標値は、複数の点の座標値の平均値などの代表値とする。
【0024】
<点群の結合方法M2>
(a)第1の3次元点群データと第2の3次元点群データについて、マッチングによる位置合わせを行い、対応する点は1つの代表点に置き換え、対応する点が存在しない点についてはそのまま追加して、第1の結合点群データを作成する。代表点の位置座標は、対応する2つの点の位置座標の平均値などの代表値とする。
(b)第1の結合点群データと第3の3次元点群データについて、(a)と同様の処理を行い、第2の結合点群データを作成する。
この後は、(b)の処理を繰り返せば、任意の数の3次元点群データを結合することが可能である。なお、マッチングによる位置合わせには、例えば、Iterative Closest Point アルゴリズム(ICP アルゴリズム)を用いることができる。但し、処理速度の点では、上述した結合方法M1の方が好ましい。
【0025】
推定部230は、点群結合部220で得られた結合点群データ、又は、単一の測距装置300で得られた単一の3次元点群データを用いて、車両100の位置及び向きを推定する。本実施形態では、推定部230は、メモリ202に格納されたテンプレート点群TPを用いたテンプレートマッチングを実行することによって、車両100の位置及び向きを推定する。なお、推定部230は、3次元点群データが利用できない場合に、車両100の走行履歴や、車両100に搭載されているGPS受信機140で検出された位置情報を用いて、車両100の位置および向きを推定することが可能である。推定部230は、車両100の位置及び向きの一方のみを推定するようにしてもよい。この場合には、車両100の位置及び向きの他方は、車両100の走行履歴などを用いて決定される。
【0026】
車両の位置及び向きを「車両位置情報」とも呼ぶ。本実施形態では、車両位置情報には、工場の基準座標系における車両100の位置及び向きが含まれている。
【0027】
遠隔制御指令生成部240は、推定された車両100の位置及び向きを用いて、遠隔制御のための制御指令を生成して車両100に送信する。この制御指令は、メモリ202に格納された目標ルートTRに従って車両100を走行させる指令である。制御指令は、駆動力又は制動力と、舵角とを含む指令として生成することができる。或いは、制御指令を、車両100の位置及び向きの少なくとも一方と、今後の走行ルートとを含む指令として生成してもよい。
【0028】
本実施形態では、制御指令は、車両100の加速度および操舵角をパラメータとして含んでいる。他の実施形態では、制御指令は、車両100の加速度に代えて、あるいは、これに加えて、車両100の速度をパラメータとして含んでいてもよい。
【0029】
工程管理装置400は、工場における車両100の製造工程全般の管理を実行する。例えば、1台の車両100が目標ルートTRに沿った走行を開始する際には、その車両100の識別番号や型式などを示す個体情報が、工程管理装置400から遠隔制御装置200に送信される。遠隔制御装置200で検出された車両100の位置は、工程管理装置400にも送信される。なお、工程管理装置400の機能を、遠隔制御装置200と同じ装置に実装するようにしてもよい。
【0030】
遠隔制御装置200を「サーバ」とも呼び、測距装置300を「外部センサ」とも呼ぶ。また、制御指令を「走行制御信号」とも呼び、目標ルートTRを「参照経路」とも呼び、基準座標系を「グローバル座標系」とも呼ぶ。
【0031】
図3は、第1実施形態における遠隔制御の処理手順を示すフローチャートである。遠隔制御装置200の処理は、一定の周期毎に実行される。或いは、3次元点群データ取得部210が、制御対象となる車両100の測定を担当する複数の測距装置300から3次元点群データを新たに取得するたびに
図3に示す遠隔制御装置200の処理を実行するようにしてもよい。3次元点群データ取得部210は、新たに取得した3次元点群データから、静止物を表す背景点群データを除去する前処理を実行するようにしてもよい。
【0032】
ステップS10では、点群結合部220が、遠隔制御装置200による遠隔制御の要求精度が精度基準値以上か否かを判定する。遠隔制御の要求精度は、例えば、目標ルートTRに沿って設けられた複数の区間毎に予め設定される。また、車両100の走行状況に応じて要求精度を設定するようにしてもよい。要求精度を決める際の車両100の位置は、前回の推定処理で推定された位置としてもよく、或いは、車両100の走行履歴から推定される位置を用いてもよい。精度基準値は予め設定された閾値としてもよく、或いは、車両100の走行状況に応じて精度基準値を変更するようにしてもよい。
【0033】
要求精度が精度基準値未満と判定された場合には、ステップS50に進み、推定部230が、複数の測距装置300の中から1つの測距装置300を選択し、その測距装置300で得られた単一の3次元点群データを用いて車両100の位置及び向きを推定する推定処理を実行する。この推定処理は、3次元点群データとテンプレート点群TPとのマッチングを行うことによって実行できる。
【0034】
一方、要求精度が精度基準値以上と判定された場合には、ステップS20に進み、点群結合部220が、車両100の位置及び向きの推定処理の許容処理時間が時間基準値以上か否かを判定する。許容処理時間は、推定処理の処理時間が長くなっても遠隔制御に不具合が生じない時間として設定される。許容処理時間は、例えば、目標ルートTRに沿って設けられた複数の区間毎に予め設定される。また、車両100の走行状況に応じて許容処理時間を設定するようにしてもよい。例えば、遠隔制御の開始前や、車両100の一時停止中、車両100の低速走行中などのように推定処理の処理時間を十分に確保できる場合には許容処理時間が長く設定される。時間基準値は、予め設定された閾値としてもよく、或いは、車両100の走行状況に応じて時間基準値を変更するようにしてもよい。
【0035】
許容処理時間が時間基準値未満と判定された場合には、前述したステップS50に進み、単一の3次元点群データを用いて車両100の位置及び向きが推定される。
【0036】
一方、許容処理時間が時間基準値以上と判定された場合には、ステップS30に進む。ステップS30では、点群結合部220が、遠隔制御システム10に含まれる複数の測距装置300のうちの2つ以上の測距装置300を選択し、2つ以上の測距装置300から得られる2つ以上の3次元点群データを結合して結合点群データを作成する。ステップS40では、推定部230が、結合点群データとテンプレート点群TPとのマッチングを実行することによって、車両100の位置及び向きを推定する。
【0037】
ステップS60では、ステップS40又はステップS50で推定された車両100の位置及び向きを用いて、遠隔制御指令生成部240が制御指令値を生成して車両100に送信する。ステップS60の詳細は以下の通りである。
【0038】
ステップS60において、遠隔制御指令生成部240は、まず、車両100の位置及び向きを含む車両位置情報と、目標ルートTRとを用いて、次に車両100が向かうべき目標位置を決定する。遠隔制御指令生成部240は、車両100の現在地よりも先の目標ルートTR上に目標位置を決定し、その目標位置に向かって車両100を走行させるための制御指令値を生成する。本実施形態では、制御指令値は、車両100の加速度および操舵角をパラメータとして含んでいる。遠隔制御指令生成部240は、車両100の位置の推移から車両100の走行速度を算出し、算出した走行速度と目標速度とを比較する。遠隔制御指令生成部240は、全体として、走行速度が目標速度よりも低い場合には、車両100が加速するように加速度を決定し、走行速度が目標速度よりも高い場合には、車両100が減速するように加速度を決定する。また、遠隔制御指令生成部240は、車両100が目標ルートTR上に位置している場合には、車両100が目標ルートTR上から逸脱しないように操舵角および加速度を決定し、車両100が目標ルートTR上に位置していない場合、換言すれば、車両100が目標ルートTR上から逸脱している場合には、車両100が目標ルートTR上に復帰するように操舵角および加速度を決定する。他の実施形態では、制御指令値は、車両100の加速度に代えて、あるいは、これに加えて、車両100の速度をパラメータとして含んでいてもよい。こうして生成された制御指令値は、遠隔制御装置200から車両100に送信される。
【0039】
車両100のプロセッサ111による制御処理は、ステップS70とステップS80を含む。ステップS70では、車両制御部115が、遠隔制御装置200から制御指令値を取得するまで待機する。制御指令値が取得されると、ステップS80に進み、車両制御部115が、取得した制御指令値に応じてアクチュエータ群120を制御する。本実施形態の遠隔制御システム10によれば、車両100を遠隔制御により走行させることができ、クレーンやコンベア等の搬送設備を用いずに車両100を目標ルートTRに沿って移動させることができる。
【0040】
図4は、使用する3次元点群データの数を変更する例を示す説明図である。
図4の上方に示す例では、遠隔制御の要求精度が精度基準値未満の場合に、1つの測距装置300_1で得られた単一の3次元点群データのみが推定処理に使用されている。推定処理に使用される単一の3次元点群データは、例えば、点数が最も多いものが選択される。或いは、車両100の走行履歴から、推定処理に最も適した位置に設置されていると推測される1つの測距装置300で得られた3次元点群データを選択するようにしてもよい。
【0041】
図4の下方の例では、遠隔制御の要求精度が精度基準値以上の場合に、3つの測距装置300_1,300_2,300_3で得られた3つの3次元点群データが推定処理に使用されている。この場合には、3つの3次元点群データが結合されて結合点群データが作成される。推定処理に使用される2つ以上の3次元点群データは、例えば、点数が最も多い順に選択される。或いは、車両100の走行履歴から、推定処理に最も適した位置に設置されていると推測される2つの以上の測距装置300で得られた2つ以上の3次元点群データを選択するようにしてもよい。推定処理に使用する2つ以上の測距装置300は、異なる方向から車両100を観察するものとすることが好ましく、特に、車両100の前方側と後方側から車両100をそれぞれ観察する少なくとも2つの測距装置300を含むことが好ましい。
【0042】
推定処理に使用する3次元点群データの個数は、遠隔制御の要求精度が高いほど大きくなるように設定されることが好ましい。また、推定処理に使用する3次元点群データの個数は、推定処理の許容処理時間が長いほど大きくなるように設定されることが好ましい。
【0043】
本実施形態の推定部230は、遠隔制御の要求精度が精度基準値以上である場合に、結合点群データを用いた推定処理を実行する。こうすれば、遠隔制御の要求精度が高い場合に推定精度を高めることができる。
【0044】
また、推定部230は、推定処理の許容処理時間が時間基準値以上である場合に、結合点群データを用いた推定処理を実行する。こうすれば、推定処理の許容処理時間が長い場合に推定精度を高めることができる。更に、推定部230は、許容処理時間が時間基準値未満である場合に、単一の3次元点群データを用いて推定処理を実行する。こうすれば、推定処理の許容処理時間が短い場合に処理速度を高めることができる。なお、上述したステップS10,S20の一方を省略してもよい。
【0045】
なお、遠隔制御の要求精度や、推定処理の許容処理時間は、車両100の走行状況に応じて変更されることが好ましい。この場合の走行状況は、目標ルートTRにおける車両100の位置や速度を意味する。
【0046】
以上のように、第1実施形態では、2つ以上の3次元点群データを結合して結合点群データを作成し、結合点群データを用いて車両100の位置及び向きの少なくとも一方を推定するので、移動体の位置や向きの推定精度を高めることができる。また、車両100の走行状況に応じて、2つ以上の3次元点群データを結合した結合点群データを用いた推定処理と、単一の3次元点群データを用いた推定処理と、のいずれかを選択して車両100の位置及び向きの少なくとも一方を推定するので、走行状況に応じて推定精度と処理速度のいずれかを優先させることができる。
【0047】
本実施形態では、車両100の走行状況として、目標ルートTRにおける車両100の位置や速度を用いていたが、これら以外の項目で車両100の走行状況を規定するようにしてもよい。例えば、走行状況として車両100の向きや舵角を用いてもよい。
【0048】
上記実施形態において、車両100は、遠隔制御により移動可能な構成を備えていれば良く、例えば、以下に述べる構成を備えるプラットフォームの形態であっても良い。具体的には、車両100は、遠隔制御により「走る」、「曲がる」、「止まる」の3つの機能を発揮するために、少なくとも、車両制御部115と通信装置150とを備えていれば良い。すなわち、遠隔制御により移動可能な車両100は、運転席やダッシュボードなどの内装部品の少なくとも一部が装着されていなくてもよく、バンパーやフェンダーなどの外装部品の少なくとも一部が装着されていなくてもよく、ボディシェルが装着されていなくてもよい。この場合、車両100が工場から出荷されるまでの間に、ボディシェル等の残りの部品が車両100に装着されてもよいし、ボディシェル等の残りの部品が車両100に装着されていない状態で、車両100が工場から出荷された後にボディシェル等の残りの部品が車両100に装着されてもよい。なお、プラットフォームの形態に対しても、各実施形態における車両100と同様にして位置決定がなされ得る。
【0049】
B.第2実施形態
図5は、第2実施形態における車両100と遠隔制御装置200の構成を示すブロック図である。
図2に示した第1実施形態の構成との違いは、主に以下の3点である。
(1)車両100のプロセッサ111の機能に、3次元点群データ取得部121と点群結合部122と推定部123と制御指令生成部124の機能が追加されている点。
(2)車両100のメモリ112に、テンプレート点群TPと目標ルートTRが格納されている点。
(3)遠隔制御装置200のプロセッサ201の機能から、3次元点群データ取得部210と点群結合部220と推定部230と遠隔制御指令生成部240の機能が省略されている点。
【0050】
3次元点群データ取得部121と点群結合部122と推定部123と制御指令生成部124の機能は、3次元点群データ取得部210と点群結合部220と推定部230と遠隔制御指令生成部240の機能とそれぞれほぼ同じなので、それらの説明は省略する。
【0051】
第2実施形態では、2つ以上の3次元点群データを結合して結合点群データを作成し、結合点群データを用いて車両100の位置及び向きの少なくとも一方を推定する処理を、車両100が実行する。すなわち、第2実施形態では、車両100の車両制御装置110が本開示の「制御装置」に相当する。
【0052】
図6は、第2実施形態における車両制御の処理手順を示すフローチャートである。
図6のステップS110~S160は、
図3に示した第1実施形態におけるステップS10~S60にそれぞれ対応する。但し、ステップS160では、車両100の制御指令生成部124によって制御指令値が作成されるので、遠隔制御装置200と車両100との間で制御指令値の送受信を行うことなく、車両100のアクチュエータ群120の制御が実行される。
【0053】
なお、テンプレート点群TPと目標ルートTRは、車両100が目標ルートTRに沿って走行を開始する前に、車両100のメモリ112に格納される。これらのデータは、遠隔制御装置200又は工程管理装置400から供給されるものとしてもよく、他の手段を用いて車両100のメモリ112に書き込まれるようにしてもよい。
【0054】
以上のように、第2実施形態においても、第1実施形態と同様に、2つ以上の3次元点群データを結合して結合点群データを作成し、結合点群データを用いて移動体の位置及び向きの少なくとも一方を推定するので、移動体の位置や向きの推定精度を高めることができる。また、車両100の走行状況に応じて、2つ以上の3次元点群データを結合した結合点群データを用いた推定処理と、単一の3次元点群データを用いた推定処理と、のいずれかを選択して車両100の位置及び向きの少なくとも一方を推定するので、走行状況に応じて推定精度と処理速度のいずれかを優先させることができる。
【0055】
C.他の実施形態
以下に説明する各種の実施形態において、「サーバ200」は遠隔制御装置200を意味し、「外部センサ」は測距装置300を意味する。また、「走行制御信号」は制御指令を意味し、「参照経路」は目標ルートTRを意味し、「グローバル座標系」は基準座標系Σrを意味する。
【0056】
(C1)上記各実施形態では、外部センサは、LiDAR(Light Detection And Ranging)である。これに対して、外部センサは、LiDARでなくてもよく、例えば、カメラであってもよい。外部センサがカメラの場合に、サーバ200は、例えば、撮像画像から車両100の外形を検出し、撮像画像の座標系、すなわち、ローカル座標系における車両100の測位点の座標を算出し、算出された座標をグローバル座標系における座標に変換することによって、車両100の位置を取得する。撮像画像に含まれる車両100の外形は、例えば、人工知能を活用した検出モデルに撮像画像を入力することで検出できる。検出モデルは、例えば、システム10内やシステム10外で準備され、サーバ200のメモリに予め記憶される。検出モデルとしては、例えば、セマンティックセグメンテーションとインスタンスセグメンテーションとのいずれかを実現するように学習された学習済みの機械学習モデルが挙げられる。この機械学習モデルとしては、例えば、学習用データセットを用いた教師あり学習によって学習された畳み込みニューラルネットワーク(以下、CNN)を用いることができる。学習用データセットは、例えば、車両100を含む複数の訓練画像と、訓練画像における各領域が車両100を示す領域と車両100以外を示す領域とのいずれであるかを示すラベルとを有している。CNNの学習時には、バックプロパゲーション(誤差逆伝播法)により、検出モデルによる出力結果とラベルとの誤差を低減するように、CNNのパラメータが更新されることが好ましい。また、サーバ200は、例えば、オプティカルフロー法を利用して、撮像画像のフレーム間における車両100の特徴点の位置変化から算出された車両100の移動ベクトルの向きに基づいて推定することによって、車両100の向きを取得できる。
【0057】
(C2)上記第1実施形態では、サーバ200により、車両100の位置及び向きを含む車両位置情報の取得から、走行制御信号の生成までの処理が実行される。これに対して、車両100により車両位置情報の取得から走行制御信号の生成までの処理の少なくとも一部が実行されてもよい。例えば、以下の(1)から(3)の形態であってもよい。
【0058】
(1)サーバ200は、車両位置情報を取得し、車両100が次に向かうべき目標位置を決定し、取得した車両位置情報に表されている車両100の現在地から目標位置までの経路を生成してもよい。サーバ200は、現在地と目的地との間の目標位置までの経路を生成してもよいし、目的地までの経路を生成してもよい。サーバ200は、生成した経路を車両100に対して送信してもよい。車両100は、サーバ200から受信した経路上を車両100が走行するように走行制御信号を生成し、生成した走行制御信号を用いて車両100のアクチュエータを制御してもよい。
【0059】
(2)サーバ200は、車両位置情報を取得し、取得した車両位置情報を車両100に対して送信してもよい。車両100は、車両100が次に向かうべき目標位置を決定し、受信した車両位置情報に表されている車両100の現在地から目標位置までの経路を生成し、生成した経路上を車両100が走行するように走行制御信号を生成し、生成した走行制御信号を用いて車両100のアクチュエータを制御してもよい。
【0060】
(3)上記(1),(2)の形態において、車両100に内部センサが搭載されており、経路の生成と走行制御信号の生成との少なくとも一方に、内部センサから出力される検出結果が用いられてもよい。内部センサは、車両100に搭載されたセンサである。具体的には、内部センサには、例えば、カメラ、LiDAR、ミリ波レーダー、超音波センサ、GPSセンサ、加速度センサ、ジャイロセンサなどが含まれ得る。例えば、上記(1)の形態において、サーバ200は、内部センサの検出結果を取得し、経路を生成する際に内部センサの検出結果を経路に反映してもよい。上記(1)の形態において、車両100は、内部センサの検出結果を取得し、走行制御信号を生成する際に内部センサの検出結果を走行制御信号に反映してもよい。上記(2)の形態において、車両100は、内部センサの検出結果を取得し、経路を生成する際に内部センサの検出結果を経路に反映してもよい。上記(2)の形態において、車両100は、内部センサの検出結果を取得し、走行制御信号を生成する際に内部センサの検出結果を走行制御信号に反映してもよい。
【0061】
(C3)上記各実施形態において、車両100に内部センサが搭載されており、経路の生成と走行制御信号の生成との少なくとも一方に、内部センサから出力される検出結果が用いられてもよい。例えば、車両100は、内部センサの検出結果を取得し、経路を生成する際に内部センサの検出結果を経路に反映してもよい。車両100は、内部センサの検出結果を取得し、走行制御信号を生成する際に内部センサの検出結果を走行制御信号に反映してもよい。
【0062】
(C4)上記第1実施形態では、サーバ200は、車両100に対して送信する走行制御信号を自動で生成している。これに対して、サーバ200は、車両100の外部に位置している外部オペレータの操作に従って、車両100に対して送信する走行制御信号を生成してもよい。例えば、外部センサから出力される撮像画像を表示するディスプレイ、車両100を遠隔操作するためのステアリング、アクセルペダル、ブレーキペダル、および、有線通信あるいは無線通信によりサーバ200と通信するための通信装置を備える操縦装置を外部オペレータが操作し、サーバ200は、操縦装置に加えられた操作に応じた走行制御信号を生成してもよい。
【0063】
(C5)上記各実施形態において、車両100は、無人運転により移動可能な構成を備えていればよく、例えば、以下に述べる構成を備えるプラットフォームの形態であってもよい。具体的には、車両100は、無人運転により「走る」、「曲がる」、「止まる」の3つの機能を発揮するために、少なくとも、車両100の走行を制御する制御装置と、車両100のアクチュエータとを備えていればよい。無人運転のために車両100が外部から情報を取得する場合に、車両100は、さらに、通信装置を備えていればよい。すなわち、無人運転により移動可能な車両100は、運転席やダッシュボードなどの内装部品の少なくとも一部が装着されていなくてもよく、バンパーやフェンダーなどの外装部品の少なくとも一部が装着されていなくてもよく、ボディシェルが装着されていなくてもよい。この場合、車両100が工場から出荷されるまでの間に、ボディシェル等の残りの部品が車両100に装着されてもよいし、ボディシェル等の残りの部品が車両100に装着されていない状態で、車両100が工場から出荷された後にボディシェル等の残りの部品が車両100に装着されてもよい。各部品は、車両100の上側、下側、前側、後側、右側あるいは左側といった任意の方向から装着されてよく、それぞれ同じ方向から装着されてもよいし、それぞれ異なる方向から装着されてもよい。なお、プラットフォームの形態に対しても、第1実施形態における車両100と同様にして位置決定がなされ得る。
【0064】
(C6)車両100は、複数のモジュールを組み合わせることによって製造されてもよい。モジュールは、車両100の部位や機能に応じて纏められた複数の部品によって構成されるユニットを意味する。例えば、車両100のプラットフォームは、プラットフォームの前部を構成する前方モジュールと、プラットフォームの中央部を構成する中央モジュールと、プラットフォームの後部を構成する後方モジュールとを組み合わせることで製造されてもよい。なお、プラットフォームを構成するモジュールの数は、3つに限られず、2つ以下や4つ以上であってもよい。また、プラットフォームを構成する部品に加えて、あるいは、これに代えて、車両100のうちプラットフォームとは異なる部分を構成する部品がモジュール化されてもよい。また、各種モジュールは、バンパーやグリルといった任意の外装部品や、シートやコンソールといった任意の内装部品を含んでいてもよい。また、車両100に限らず、任意の態様の移動体が、複数のモジュールを組み合わせることによって製造されてもよい。こうしたモジュールは、例えば、複数の部品を溶接や固定具等によって接合することで製造されてもよいし、モジュールを構成する部品の少なくとも一部を鋳造によって一の部品として一体的に成型することで製造されてもよい。一の部品、特に比較的大型の部品を一体的に成型する成型手法は、ギガキャストやメガキャストとも呼ばれる。例えば、上記の前方モジュールや中央モジュールや後方モジュールは、ギガキャストを用いて製造されてもよい。
【0065】
(C7)無人運転による車両100の走行を利用して車両100を搬送させることを「自走搬送」とも呼ぶ。また、自走搬送を実現するための構成を、「車両遠隔制御自律走行搬送システム」とも呼ぶ。また、自走搬送を利用して車両100を生産する生産方式のことを「自走生産」とも呼ぶ。自走生産では、例えば、車両100を製造する工場において、車両100の搬送の少なくとも一部が、自走搬送によって実現される。
【0066】
本開示は、上述の実施形態に限られるものではなく、その趣旨を逸脱しない範囲において種々の構成で実現することができる。例えば、発明の概要の欄に記載した各形態中の技術的特徴に対応する実施形態中の技術的特徴は、上述の課題の一部又は全部を解決するために、あるいは、上述の効果の一部又は全部を達成するために、適宜、差し替えや、組み合わせを行うことが可能である。また、その技術的特徴が本明細書中に必須なものとして説明されていなければ、適宜、削除することが可能である。
【符号の説明】
【0067】
10…遠隔制御システム、100…車両、110…車両制御装置、111…プロセッサ、112…メモリ、113…入出力インタフェース、114…内部バス、115…車両制御部、116…位置情報取得部、120…アクチュエータ群、121…3次元点群データ取得部、122…点群結合部、123…推定部、124…制御指令生成部、130…通信装置、140…GPS受信機、150…通信装置、200…遠隔制御装置(サーバ)、201…プロセッサ、202…メモリ、203…入出力インタフェース、204…内部バス、205…通信装置、210…3次元点群データ取得部、220…点群結合部、230…推定部、240…遠隔制御指令生成部、300…測距装置(外部センサ)、400…工程管理装置